从零开始的敲代码生活(Linux系统基础) 一、Linux系统及相关基础操作启动终端调出终端“Ctrl” “Shift” “T”终端字体的放大“Ctrl” “Shift” “”终端字体的缩小“Shift” “-”终端中的复制“Ctrl” “Shift” “C”终端中的粘贴“Ctrl” “Shift” “V”。TAB键自动补齐键可补齐文件名或命令“Ctrl” “L”清空当前终端页面的内容“Ctrl” “C”终止终端中正在执行的命令键盘上下键查看历史命令命令提示符linuxubuntu:~$“linux”表示用户名“ubuntu”表示主机名“~”表示目录名“~”代表家目录“$”表示操作用户为普通用户若为“#”则表示用户为系统管理员。manual手册的使用man 命令名可以查看命令的详细操作二、linux系统常用命令1.ls:列出当前目录下的文件ls 目录名列出指定目录下的文件ls -l简写ll列出当前目录下文件的详细情况注ls -l列出的文件详情的详细含义例如drwxrwxrwx 6 linux linux 4096 Feb 6 14:30 20230113其中“d”表是该内容为目录类型若为“-”则表是该内容为普通文件类型三组“rwx”分别表示该用户、组用户、其他用户对文件的“r”读、“w”写、“x”执行权限“6”表示硬链接数“linux”第一个表示文件创建者“linux”第二个表示组用户“4096”表示文件大小“ Feb 6 14:30”表示文件的最后修改时间“20230113”表示文件名。若想修改文件权限可使用chmod例如chmod 0777 文件名0777表示八进制数111rwxls -a列出当前文件下的全部文件包括隐藏文件2.cd 目录名切换工作路径至指定目录cd或cd ~切换工作路径至家目录cd /切换工作路径至根目录cd ..回退一级目录最高回退至根目录cd .切换至当前目录3.mkdir 目录名创建目录4.rmdir 目录名删除目录目录必须为空才能删除5.touch 文件名创建一个文件6.rm 文件名删除文件rm -r 文件/目录删除文件/目录rm -fr 文件/目录强制删除文件/目录7.cp 源文件 目标目录将源文件复制到目标目录cp -r源目录 目标目录将源目录复制到目标目录8.mv 源文件/源目录 目标文件/目标目录将源文件/源目录移动到目标文件/目标目录若目标文件/目标目录不存在时则创建一个目标文件/目标目录相当于给源文件/源目录重命名9.clear:清空当前终端页面的内容10.pwd显示当前路径11.cat 文件名文本文件、.c文件等将文件内容打印显示在终端中12.sudo 命令名将权限提升至管理员权限执行命令解决操作权限不足问题但需慎用13.df -h/根目录查看磁盘占用情况14.du -h/根目录查看磁盘中文件占用磁盘情况注在执行文件相关操作时需注意相对路径相对于当前目录开始的路径于绝对路径从根目录开始的路径的区分与使用三、Linux下的目录结构Linux系统的目录结构为树状结构在根目录下分出多个子目录子目录又分出多个子目录通常用“/”表示根目录“~”表示家目录在根目录下常见的目录有/bin : 用户可操作的二进制程序/sbin管理员可操作的二进制程序/etc 存放系统的配置文件/lib 存放系统使用的库文件/home家目录/dev : 存放设备类文件/var 存放日志、缓存数据四、Linux环境下C语言程序开发流程1.编辑器vim用来编写C代码1vi或vim 文件名.c创建一个.c文件2按“i”进入编辑状态nomal-insert“i”插入模式3按“ESC”“:”“wq”保持文件并退出按“ESC”进入命令行模式按“:”进入底行模式“w”只保存“q”只推出“w!”强制保存“q!”强制保存“wq!”强制保存并退出vim命令在命令行模式下nyy复制当前行n次dd删除/剪切当前行np粘贴n次复制起始行,复制结束行y从起始行到结束行复制u撤回gg将光标跳转至文件开头GG将光标跳转至文件结尾按“v”进行选择选中操作对选中的内容按“”可自动格式化代码2.编译器gcc将C语言源文件编译为可执行文件gcc编译的步骤1预处理2编译3汇编4链接gcc 文件名编译并生成一个可执行文件名为a.outgcc 文件名 -o生成指定名称的可执行文件./a.out./文件名执行可执行文件