小白Linux文件管理命令部分解析

📅 2026/7/17 4:13:36
小白Linux文件管理命令部分解析
Linux文件管理的常用命令解析一,命令的组成每一条Linux命令都是以命令选项(可多个)参数(可多个一般是路径)选项与参数也可不加组成部分含义命令要做什么选项想怎么看参数对什么做如下输入指令分析效果ls命令ls列出当前目录内容ls -l命令ls 选项l以详细列表方式展示ls /var命令ls 参数/var列出/var目录内容ls -la /var命令ls 选项-l -a 参数var查看/var目录下的所有内容包含隐藏文件!--在Linux中命令是几乎都是小写命令选项参数之间都是有空格存在的--二“查看”命令pwd----查看当前位置pwd Print Working Directory打印当前工作目录所在地# 任何时候不确定自己所在位时敲pwd # [rootrocky10 ~]# pwd /root!--以上代码显示“root”是用户名“rocky10”是主机名“~”是所在的家目录 输出的“/root”是显示现在在根下的“root”这一个目录中--ls命令---查看目录内容lsList,查看目录内容选项效果-l显示详细信息(权限大小时间)-a显示所有文件包括隐藏文件(以“.” 为开头的文件)-h一般与“-l”配合文件大小以KB/MB/G的形式显示-d查看目录本身的详细信息-s按文件大小排序-t按文件修改时间排序!--以上选项都要配合命令一起使用 选项是可以多个一起使用的如要看当前目录的所有文件的详细信息 ‘ls -la’ --tree命令---查看目录数友情提示如果你输入tree选项参数时显示tree: command not foun 请先安装tree选项效果-d只显示目录的tree不显示文件-L 2只显示目录的两层跳转命令---cd命令作用cd或cd ~回到当前用户的家目录/home/用户名cd /切换到根目录cd ..切换到上级目录父目录cd ../..切换到上两级目录cd -切换到上一个工作目录相当于返回上一步三文件的增删改查命令增----创建mkdir----创建目录选项作用示例-p递归创建—— 如果父目录不存在自动创建所有中间目录mkdir -p a/b/c/d-v显示创建过程verbose—— 显示每个创建的目录mkdir -v newfolder-m设置权限—— 创建时直接指定目录权限而非使用默认权限mkdir -m 755 newfoldertouch----创建空的文本文件#一次性创建多个文本文件# touch file1.txt file2.txt file3.txt ​ #或使用花括号展开# touch log_{1..10}.txt # 创建 log_1.txt 到 log_10.txt 共10个文件!--上面这个用法在mkdir命令上也适用--创建特定时间的文件# 时间格式月日时分.秒年份可选 touch -t 01151030.00 file.txt # 设置为 1月15日 10:30:00 ​ # 或使用更直观的格式 touch -d 2026-01-15 10:30:00 file.txt删----删除rm命令---删除选项效果rm 目录删除当前目录rm -r递归删除目录rm -f强制删除不提示rm -i删除前确认!--rm命令使用时要确定好所要删除的目录/文件里的内容再进行删除--如果单纯删除空目录时建议使用 rmdir改----复制移动/重命名cp----复制# 复制文件 cp file1.txt file1_backup.txt cp file1.txt /tmp/ # 复制到/tmp cp /etc/passwd ./ # 复制到当前目录.代表当前目录 ​ # 复制目录必须加 -r cp -r dir1 dir1_backup cp -r dir1 /tmp/ ​ # 一次复制多个文件到目录 cp /etc/hosts /etc/fstab ./选项效果-r递归复制目录及其所有内容-i覆盖前提示确认-v显示复制过程mv----移动/重命名在Linux中重命名被视为”移动“-----需在同一目录下移动#重命名 mv filel.txt data.txt #把file1.txt改成data,txt ​ #移动到其他目录 mv data.txt dir1/docs #把data.txt文件移动到dir1/docs mv *.txt /var/tmp/ #把所有以.txt结尾的文件移动到/var/tmp ​ #移动目录 mv dir1 /var/tmp #把dir1目录移动到/var/tmp目录下!--这里面以.txt结尾的是创建的文本文件 dir1是创建的目录--上面以”/“开头的路径是绝对路径 如果开头部署以”/“开头就是相对路径查----查看文件内容cat---一次性显示整个文件适合查看小文件!--这里cat主要是静态查看文件内容所以没有过的使用选项 一般是cat -n显示行号 --less---分页查看大文件适合查看大文件(如系统日志进程安全文件等!--less比more功能更强是首选所有这里不讲解more命令--在用less查看文件时按键作用空格向下翻页b向上翻页上下箭头逐行移动/关键词收索关键词(向下搜索按n跳转到下一个)q退出head/tail---查开头/查结尾head---查开头#head:默认显示前十行 head /etc/passwd #查看passwd文件的前十行内容 head -n5 /etc/passwd #查看passwd文件的前五行内容 ​ #分别查看文件内容 且显示文件名路径 head -v /etc/passwd /etc/os-release #分别显示passwd文件与os-release文件开头内容且显示文件名tail---查结尾日常使用: tail -f 查看日志的常用命令#tail:默认显示后十行 tail /etc/passwd #查看passwd文件后十行内容 tail -n5 /etc/passwd #查看passwd文件后五行内容 ​ #持续查看文件内容 实时更新 -rocky中 tail -f /var/log/secure #持续查看安全相关日志按ctrlc 退出 ​ #分别查看文件内容 且显示文件名路径 tail -v /etc/passwd /etc/os-release #分别显示passwd文件与os-release文件结尾内容且显示文件名grep---文本内查找关键词日常使用:tail -100 /var/log/secure | grep fail从安全日志的后一百行中找到错误#搜索包含fail的行 grep fail /var/log/secure ​ # 搜索时忽略大小写 grep -i fail /var/log/secure ​ # 显示匹配行及上下各3行 grep -C 3 fail /var/log/secure ​ # 统计匹配行数 grep -c fail /var/log/securefind---在目录树中查找文件功能极其强大可以根据文件名大小修改时间类型等条件进行搜索用法:find 路径 选项 操作如以下# 在当前目录及其子目录下查找名为 file1.txt 的文件 sudo find . -name file1.txt ​ # 在/目录及其子目录下查找名为 passwd 的文件 sudo find / -name passwd ​ # 在/etc目录及其子目录下查找名为 passwd 的文件 sudo find /etc -name passwd ​ # 在 /var 目录下查找所有 .log 文件不区分大小写 sudo find /var -iname *.log ​ # 查找/etc目录下大于 10MB 的文件 sudo find /etc -size 10M ​ # 查找 /var/log 目录下 7 天内修改过的文件 sudo find /var/log -mtime -7 ​ # 查找当前目录下的所有目录 sudo find . -type dlocate---在数据库中查找文件功能基于数据库 updatedb 快速查找文件速度比“find”快很多但无法查找新创建的文件需要先更新数据库选项说明示例-i忽略大小写locate -i nginx→ 匹配Nginx、NGINX-b(--basename)只匹配文件名不匹配路径locate -b passwd→ 只找文件名为passwd的文件忽略/etc/passwd这种路径中包含的-c(--count)只输出匹配数量不列出具体路径locate -c .log→ 输出.log文件的总数-l N(--limitN)限制输出行数locate -l 5 nginx→ 只显示前5个结果-r(--regexp)使用正则表达式匹配而非通配符locate -r .*\.conf$→ 匹配所有.conf结尾的文件-e(--existing)只显示当前实际存在的文件过滤掉数据库中已删除的locate -e nginx.conf-0(--null)用 NUL 字符分隔输出配合xargs -0使用locate -0 *.tmp | xargs -0 rm→ 安全删除