Linux 系统

CSP初赛知识点:Linux 系统

前言

近年 CSP 初赛几乎前 5 道选择题都有一两道有关 Linux 系统的使用,所以作为备战 CSP-J/S 2024 的资料,整理下来啦。

祝各位今年所有考试都能考出自己满意的成绩!

1、常用文件操作命令

以下设文件名均为 csp,需要复制或修改成的文件名均为 rp。

功能 命令
新建文件夹 mkdir
新建空白文档 touch
复制文件 cp
复制文件夹及其包含文件 cp-a
删除文件夹 rm-r
删除文件 rm
修改文件名 mv
修改文件夹名 mv

2、常用目录操作命令

功能 命令
改变当前文件目录 cd
显示当前工作文件路径 pwd
显示文件及文件夹 ls

3、编译选项

$g++ hello.cpp -o hello

上面命令将 hello.cpp 编译并存储在 hello.exe 中,文件名通过 -o 进行选定。若被省略,输出文件默认为 a.out 若与某文件重名,则覆盖重名文件。

而你还可以用命令配合多个编译选项实现灵活的编译。例子:

$g++ -g -Wall -lm -O2 -std=c++14 hello.cpp -o hello

以上代码的意思也是将 hello.cpp 编译成 hello.exe 可执行文件,但是多加了几个编译选项:

代码 功能
-g 添加 gdb 调试选项,生成的文件中会带有调试信息
-Wall 打开所有警告
-lm 打开数学库文件,同 cpp 里的 #include<cmath>
-O2 对文件进行 O2 优化
-std=c++14 编译程序缺省源选择 c++14,因为这是 NOI Linux 2.0 中唯一的缺省源选项
-O0 关闭所有优化
相关推荐
不想写代码的星星37 分钟前
std::function 详解:用法、原理与现代 C++ 最佳实践
c++
舒一笑17 小时前
程序员效率神器:一文掌握 tmux(服务器开发必备工具)
运维·后端·程序员
Johny_Zhao18 小时前
centos7安装部署openclaw
linux·人工智能·信息安全·云计算·yum源·系统运维·openclaw
haibindev18 小时前
在 Windows+WSL2 上部署 OpenClaw AI员工的实践与踩坑
linux·wsl2·openclaw
NineData20 小时前
数据库管理工具NineData,一年进化成为数万+开发者的首选数据库工具?
运维·数据结构·数据库
梦想很大很大2 天前
拒绝“盲猜式”调优:在 Go Gin 项目中落地 OpenTelemetry 链路追踪
运维·后端·go
Sinclair2 天前
内网服务器离线安装 Nginx+PHP+MySQL 的方法
运维
叶落阁主2 天前
Tailscale 完全指南:从入门到私有 DERP 部署
运维·安全·远程工作
樱木Plus2 天前
深拷贝(Deep Copy)和浅拷贝(Shallow Copy)
c++