第1章:初始Linux系统——第15节:重点命令复习①

张开发
2026/4/13 19:44:37 15 分钟阅读

分享文章

第1章:初始Linux系统——第15节:重点命令复习①
目录一、文件与目录基本操作1. pwd显示当前工作目录2. cd切换目录3. ls列出目录内容4. mkdir创建目录5. rmdir删除空目录6. touch创建空文件 / 修改时间戳7. cp复制文件 / 目录8. mv移动 / 重命名文件或目录9. rm删除文件或目录二、文件内容查看与编辑1. cat查看文件内容2. more分页查看文件3. less功能更强的分页查看4. head查看文件开头5. tail查看文件结尾三、文件查找与检索1. whereis查找命令、源码、帮助文件位置2. find在文件系统中查找文件3. grep在文件中搜索字符串 / 正则4. wc统计行数、单词数、字节数四、文件压缩与归档1. gzip压缩文件.gz2. gunzip解压.gz 文件3. tar打包 / 解包tar.gz 等五、链接文件1. ln创建硬链接 / 软链接六、权限与归属管理1. chmod修改文件 / 目录权限2. chown修改所有者3. chgrp修改所属组4. setfacl设置 ACL 访问控制列表5. getfacl查看 ACL 权限七高频组合命令实用技巧八、Linux 命令速查手册1.目录与文件基础pwdcdlsmkdirrmdirtouch2.复制、移动、删除cpmvrm3.查看文件内容catmore / lessheadtail4.查找与检索findgrepwcwhereis5.压缩与解压gzip / gunziptar6.链接ln7.权限与归属chmodchownchgrpgetfacl / setfacl8.高频实用组合一、文件与目录基本操作1.pwd显示当前工作目录作用打印当前所在的绝对路径确认当前工作目录位置。常用选项-P显示物理路径不解析软链接直接显示真实目录-L显示逻辑路径默认解析软链接显示链接路径例题# 1. 基础用法查看当前目录 pwd # 输出示例/home/user/project # 2. 软链接场景对比 ln -s /home/user/project /home/user/link_project cd /home/user/link_project pwd -L # 输出/home/user/link_project逻辑路径 pwd -P # 输出/home/user/project真实物理路径2.cd切换目录作用切换当前工作目录到指定路径。常用选项 / 特殊用法cd或cd ~切换到当前用户的家目录cd -切换到上一次所在的目录cd ..切换到上一级目录cd ../..切换到上两级目录cd /切换到根目录例题# 1. 绝对路径切换 cd /usr/local/bin # 2. 相对路径切换当前在/home/user切换到project目录 cd project # 3. 快速回家 cd ~ # 或直接cd # 4. 回到上一次目录 cd -3.ls列出目录内容作用查看目录下的文件、子目录及属性信息。常用选项选项作用-l长格式显示权限、所有者、大小、修改时间等-a显示所有文件包含隐藏文件以.开头的文件-h以人类可读格式显示大小KB/MB/GB需配合-l-t按修改时间排序最新的在前-r反向排序配合-t可实现旧文件在前-R递归列出所有子目录内容-d仅显示目录本身不显示目录内的文件例题# 1. 长格式人类可读显示隐藏文件 ls -lha # 2. 按修改时间倒序最新文件在最后 ls -ltr # 3. 递归查看目录结构 ls -R /home/user/project # 4. 仅查看目录本身属性 ls -ld /home/user/project4.mkdir创建目录作用创建新的目录文件夹。常用选项-p递归创建多级目录父目录不存在时自动创建不会报错-m创建时直接设置权限如-m 755例题# 1. 基础用法创建单个目录 mkdir test_dir # 2. 递归创建多级目录 mkdir -p project/src/main/java # 3. 创建目录并设置权限为755 mkdir -m 755 temp_dir5.rmdir删除空目录作用仅能删除空目录非空目录无法删除需用rm -r。常用选项-p递归删除空的父目录子目录删除后父目录为空则一并删除例题# 1. 删除单个空目录 rmdir empty_dir # 2. 递归删除空目录链 rmdir -p project/src/main/java # 若java、main、src、project均为空则全部删除6.touch创建空文件 / 修改时间戳作用1. 创建新的空文件2. 修改已有文件的访问 / 修改时间戳。常用选项-a仅修改访问时间atime-m仅修改修改时间mtime-t指定自定义时间格式YYYYMMDDhhmm.ss例题# 1. 创建空文件 touch new_file.txt # 2. 批量创建空文件 touch file{1..5}.txt # 3. 修改文件时间为指定时间2026-04-13 12:00:00 touch -t 202604131200.00 test.txt7.cp复制文件 / 目录作用复制文件或目录到指定位置支持重命名。常用选项选项作用-r/-R递归复制目录复制目录必须加此选项-p保留文件属性权限、所有者、时间戳-f强制覆盖不提示-i交互式覆盖覆盖前提示确认默认开启-a归档复制等价于-dR --preserveall保留所有属性常用于备份例题# 1. 复制单个文件 cp source.txt /home/user/backup/ # 2. 复制文件并重命名 cp source.txt /home/user/backup/new_source.txt # 3. 递归复制目录 cp -r project /home/user/backup/ # 4. 归档复制保留所有属性 cp -a project /home/user/backup/8.mv移动 / 重命名文件或目录作用1. 移动文件 / 目录到新位置2. 重命名文件 / 目录。常用选项-f强制覆盖不提示-i交互式覆盖覆盖前提示确认默认开启-u仅当源文件比目标文件新或目标文件不存在时才移动例题# 1. 重命名文件 mv old_name.txt new_name.txt # 2. 移动文件到指定目录 mv test.txt /home/user/project/ # 3. 移动目录并重命名 mv project /home/user/backup/new_project9.rm删除文件或目录作用删除文件或目录高危命令谨慎使用。常用选项选项作用-r/-R递归删除目录删除非空目录必须加此选项-f强制删除不提示、忽略不存在的文件-i交互式删除删除前提示确认-v显示删除过程例题# 1. 删除单个文件 rm test.txt # 2. 强制删除文件不提示 rm -f test.txt # 3. 递归删除目录高危 rm -r project_dir # 4. 强制递归删除目录彻底删除无提示谨慎使用 rm -rf /home/user/temp/* # 注意绝对禁止使用 rm -rf / 会直接删除根目录所有文件导致系统崩溃二、文件内容查看与编辑1.cat查看文件内容作用一次性查看文件全部内容适合小文件大文件会刷屏。常用选项-n显示行号-b显示行号忽略空行-A显示所有控制字符如制表符^I、换行符$例题# 1. 查看文件内容 cat test.txt # 2. 显示行号查看 cat -n test.txt # 3. 合并多个文件到新文件 cat file1.txt file2.txt merged.txt2.more分页查看文件作用分页查看大文件按页翻动支持搜索。常用操作空格向下翻一页Enter向下翻一行/字符串向下搜索指定字符串q退出b向上翻一页部分版本支持例题# 分页查看大文件 more large_file.log3.less功能更强的分页查看作用more的增强版支持上下滚动、搜索、跳转是大文件查看首选。常用操作上下箭头逐行滚动空格 / PageDown向下翻一页PageUp向上翻一页/字符串向下搜索n下一个N上一个?字符串向上搜索G跳转到文件末尾g跳转到文件开头q退出例题# 查看大日志文件 less system.log # 查看命令输出结果管道符配合 ps -ef | less4.head查看文件开头作用查看文件开头部分内容默认显示前 10 行。常用选项-n 数字指定显示前 N 行如-n 20显示前 20 行-c 数字指定显示前 N 个字节例题# 1. 默认显示前10行 head test.txt # 2. 显示前20行 head -n 20 test.txt # 3. 显示前100个字节 head -c 100 test.txt5.tail查看文件结尾作用查看文件结尾部分内容默认显示后 10 行常用于实时查看日志。常用选项选项作用-n 数字指定显示后 N 行如-n 50显示后 50 行-f实时追踪文件新增内容日志监控必备-F增强版-f文件被轮转删除后会自动重试打开例题# 1. 默认显示后10行 tail app.log # 2. 显示后50行 tail -n 50 app.log # 3. 实时监控日志CtrlC退出 tail -f app.log三、文件查找与检索1.whereis查找命令、源码、帮助文件位置作用快速查找系统命令的二进制文件、源码、man 帮助文档位置。常用选项-b仅查找二进制文件-m仅查找 man 帮助文件-s仅查找源码文件例题# 1. 查找ls命令的相关文件 whereis ls # 输出ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz # 2. 仅查找二进制文件 whereis -b ls2.find在文件系统中查找文件作用功能最强大的文件查找命令支持按名称、大小、时间、权限等多条件查找。常用选项选项作用-name 文件名按文件名查找支持通配符*-type 类型按文件类型查找f普通文件d目录l软链接-size 大小按文件大小查找10M大于 10M-5M小于 5M-mtime 天数按修改时间查找-77 天内3030 天前-perm 权限按权限查找如755-exec 命令 {} \;对查找到的文件执行指定命令例题# 1. 按名称查找.log文件 find /home/user -name *.log # 2. 查找大于100M的文件 find / -type f -size 100M # 3. 查找7天内修改过的.txt文件 find /home/user -name *.txt -mtime -7 # 4. 查找并删除30天前的.log文件谨慎使用 find /var/log -name *.log -mtime 30 -exec rm -f {} \;3.grep在文件中搜索字符串 / 正则作用在文件中搜索匹配的字符串支持正则表达式是日志分析、文本检索神器。常用选项选项作用-i忽略大小写-v反向匹配显示不包含字符串的行-n显示匹配行的行号-c统计匹配的行数-r/-R递归搜索目录下所有文件-A 数字显示匹配行及后 N 行-B 数字显示匹配行及前 N 行-C 数字显示匹配行及前后各 N 行例题# 1. 基础搜索在文件中找error grep error app.log # 2. 忽略大小写显示行号 grep -in error app.log # 3. 递归搜索目录下所有包含error的文件 grep -r error /home/user/project/ # 4. 显示匹配行及前后2行 grep -C 2 error app.log # 5. 统计error出现的行数 grep -c error app.log4.wc统计行数、单词数、字节数作用统计文件的行数、单词数、字节数默认同时显示三个值。常用选项-l仅统计行数-w仅统计单词数-c仅统计字节数-m仅统计字符数支持中文例题# 1. 默认统计行数、单词数、字节数 wc test.txt # 输出10 20 100 test.txt10行20个单词100字节 # 2. 仅统计行数 wc -l test.txt # 3. 统计命令输出的行数如统计文件数量 ls -l | wc -l四、文件压缩与归档1.gzip压缩文件.gz作用压缩文件为.gz格式压缩后会删除原文件。常用选项-d解压文件等价于gunzip-r递归压缩目录下所有文件-v显示压缩过程-#指定压缩级别1-91 最快压缩率最低9 最慢压缩率最高默认 6例题# 1. 压缩文件 gzip test.txt # 生成test.txt.gz原文件删除 # 2. 解压文件 gzip -d test.txt.gz # 或 gunzip test.txt.gz # 3. 最高压缩率压缩 gzip -9 test.txt2.gunzip解压.gz 文件作用解压.gz格式的压缩包等价于gzip -d。常用选项-r递归解压目录下所有.gz 文件-v显示解压过程例题# 解压.gz文件 gunzip test.txt.gz3.tar打包 / 解包tar.gz 等作用Linux 最常用的归档工具支持打包、压缩、解压常见格式tar.gz、tar.bz2。核心选项必须组合使用选项作用-c创建新的归档文件打包-x解压归档文件-z用 gzip 压缩 / 解压对应.tar.gz-j用 bzip2 压缩 / 解压对应.tar.bz2-v显示操作过程-f指定归档文件名必须放在最后-t查看归档文件内容不解压-C指定解压到的目录常用命令模板打包压缩tar -zcvf 压缩包名.tar.gz 源文件/目录解压tar -zxvf 压缩包名.tar.gz查看内容tar -ztvf 压缩包名.tar.gz解压到指定目录tar -zxvf 压缩包名.tar.gz -C 目标目录例题# 1. 打包压缩目录为tar.gz tar -zcvf project.tar.gz /home/user/project # 2. 解压tar.gz文件 tar -zxvf project.tar.gz # 3. 查看压缩包内容不解压 tar -ztvf project.tar.gz # 4. 解压到指定目录 tar -zxvf project.tar.gz -C /home/user/backup/ # 5. 打包为tar.bz2更高压缩率 tar -jcvf project.tar.bz2 /home/user/project五、链接文件1.ln创建硬链接 / 软链接作用创建文件的链接分为硬链接和软链接符号链接。核心区别硬链接相当于文件的多个入口指向同一个 inode删除原文件不影响硬链接不能跨分区、不能链接目录软链接相当于 Windows 的快捷方式指向原文件路径删除原文件后软链接失效可跨分区、可链接目录常用选项-s创建软链接默认创建硬链接例题# 1. 创建硬链接 ln source.txt hard_link.txt # 两个文件指向同一个inode修改任意一个另一个同步变化 # 2. 创建软链接快捷方式 ln -s source.txt soft_link.txt # soft_link.txt仅保存source.txt的路径删除source.txt后soft_link失效 # 3. 给目录创建软链接 ln -s /home/user/project /home/user/link_project六、权限与归属管理1.chmod修改文件 / 目录权限作用修改文件 / 目录的读、写、执行权限支持数字法和符号法两种格式。权限说明读r4写w2执行x1权限分为三组所有者 (u)、所属组 (g)、其他用户 (o)数字法chmod 755 fileu7rwxg5r-xo5r-x符号法chmod ux file给所有者加执行权限常用选项-R递归修改目录下所有文件 / 目录的权限例题# 1. 数字法设置权限所有者rwx组r-x其他r-x chmod 755 test.sh # 2. 符号法给所有者加执行权限 chmod ux test.sh # 3. 给所有用户加读权限 chmod ar test.txt # 4. 递归修改目录权限 chmod -R 755 /home/user/project2.chown修改所有者作用修改文件 / 目录的所有者和所属组。常用选项-R递归修改目录下所有文件 / 目录的所有者格式chown 所有者:所属组 文件/目录例题# 1. 修改文件所有者为user chown user test.txt # 2. 修改所有者和所属组 chown user:user_group test.txt # 3. 递归修改目录所有者 chown -R user:user_group /home/user/project3.chgrp修改所属组作用仅修改文件 / 目录的所属组chown可同时修改所有者和组chgrp仅修改组。常用选项-R递归修改目录下所有文件 / 目录的所属组例题# 1. 修改文件所属组 chgrp user_group test.txt # 2. 递归修改目录所属组 chgrp -R user_group /home/user/project4.setfacl设置 ACL 访问控制列表作用传统权限u/g/o的补充可针对单个用户 / 组设置精细权限不受传统权限限制。常用选项-m设置 ACL 权限-x删除指定 ACL 权限-b删除所有 ACL 权限-R递归设置格式setfacl -m u:用户名:权限 文件或setfacl -m g:组名:权限 文件例题# 1. 给用户tom设置文件的rwx权限 setfacl -m u:tom:rwx test.txt # 2. 给组dev设置目录的r-x权限 setfacl -m g:dev:r-x project_dir # 3. 递归给目录设置ACL setfacl -R -m u:tom:rwx project_dir # 4. 删除用户tom的ACL权限 setfacl -x u:tom test.txt5.getfacl查看 ACL 权限作用查看文件 / 目录的 ACL 访问控制列表确认精细权限设置。例题# 查看文件的ACL权限 getfacl test.txt # 输出会显示传统权限ACL权限七高频组合命令实用技巧查找并统计日志中 error 数量grep -c error /var/log/syslog实时监控日志中的 errortail -f /var/log/syslog | grep error打包压缩并排除指定目录tar -zcvf project.tar.gz --excludeproject/logs /home/user/project批量修改文件名rename s/.txt/.md/ *.txt八、Linux 命令速查手册1.目录与文件基础pwd显示当前目录pwd pwd -P # 显示真实路径cd切换目录cd # 回家 cd .. # 上级 cd - # 回到上一次目录 cd /pathls列出文件ls ls -l # 详细 ls -la # 含隐藏 ls -lh # 可读大小 ls -ltr # 按时间倒序 ls -d # 看目录本身 ls -R # 递归mkdir建目录mkdir dir mkdir -p a/b/c # 递归创建 mkdir -m 755 dirrmdir删空目录rmdir dir rmdir -p a/b/ctouch建空文件 / 改时间touch file.txt touch file{1..5}.txt touch -t 202604131200 file.txt2.复制、移动、删除cp复制cp file /dest cp file newfile cp -r dir /dest cp -a dir /dest # 归档备份 cp -f file /dest # 强制覆盖mv移动 / 重命名mv old new mv file /dir mv -f file /dirrm删除慎用rm file rm -f file rm -r dir rm -rf dir # 高危3.查看文件内容cat查看小文件cat file cat -n file # 显示行号 cat a b cmore / less分页查看more file less filehead看开头head file head -n 20 filetail看结尾 / 实时日志tail file tail -n 20 file tail -f file # 实时监控4.查找与检索find查找文件find /path -name *.log find / -type f -size 100M find /path -mtime -7 find /path -name *.log -deletegrep文本搜索grep key file grep -i key file # 忽略大小写 grep -n key file # 显示行号 grep -v key file # 反向 grep -r key /dir # 递归 grep -C2 key file# 上下2行wc统计wc file wc -l file # 行数 ls | wc -l # 文件数量whereis找命令位置whereis ls whereis -b ls5.压缩与解压gzip / gunzip.gz 压缩gzip file gzip -d file.gz gunzip file.gztar打包解压最常用# 压缩 tar -zcvf file.tar.gz dir # 解压 tar -zxvf file.tar.gz # 查看 tar -ztvf file.tar.gz # 解压到指定目录 tar -zxvf file.tar.gz -C /path6.链接ln硬链接 / 软链接ln file hard # 硬链接 ln -s file soft # 软链接快捷方式7.权限与归属chmod改权限chmod 755 file chmod ux file chmod -R 755 dirchown改所有者chown user file chown user:group file chown -R user:group dirchgrp改组chgrp group file chgrp -R group dirgetfacl / setfacl精细权限getfacl file setfacl -m u:user:rwx file setfacl -R -m u:user:rwx dir setfacl -x u:user file8.高频实用组合# 实时搜错误日志 tail -f log | grep error # 统计错误行数 grep -c error log # 查看占用大的文件 du -sh /* | sort -rh # 查看进程 ps -ef | grep xxx netstat -tulnp # 解压并查看 tar -zxvf xxx.tar.gz -C /tmp

更多文章