Linux文件管理命令大全 – ls/cd/cp/mv/rm/find使用详解

a
admin
作者
2026-07-15
发布日期
约 7 分钟
阅读时间

玩 Linux 必须从文件管理开始,这组命令每天都会用到。

ls:列出目录内容

最基础的命令,但很多人只用 ls,其实它有很多实用参数。

# 基础列出
ls

# 显示详细信息(权限、大小、时间)
ls -l

# 显示隐藏文件(以.开头的)
ls -a

# 人类可读的文件大小(KB/MB/GB)
ls -lh

# 按修改时间倒序(最新的在前)
ls -lt

# 组合使用:详细信息+隐藏文件+人类可读大小+时间排序
ls -laht

常用场景:查看目录里有什么文件、文件大小、最近修改的文件。

cd:切换目录

# 进入指定目录
cd /var/www/html

# 回到家目录
cd ~
# 或直接
cd

# 回到上一级
cd ..

# 回到上一次所在目录
cd -

# 进入根目录
cd /

小技巧cd - 很实用,能在两个目录之间快速切换。

pwd:显示当前路径

pwd
# 输出:/var/www/html

不知道自己在哪时,敲一下 pwd 立刻清楚。

cp:复制文件或目录

# 复制文件
cp file.txt file_backup.txt

# 复制目录(必须加 -r)
cp -r /var/www/html /backup/html

# 保留权限和时间戳
cp -p file.txt /tmp/

# 强制覆盖不提示
cp -f source.txt dest.txt

# 仅当源文件更新时才复制
cp -u source.txt dest.txt

注意:复制目录必须加 -r,否则报错。

mv:移动或重命名

# 重命名
mv old_name.txt new_name.txt

# 移动文件到另一个目录
mv file.txt /tmp/

# 移动目录(不需要 -r)
mv /var/www/html /var/www/site

# 覆盖前提示确认
mv -i file.txt /tmp/

mv 比 cp 快:同一分区下 mv 只是改路径指针,不实际复制数据。

rm:删除文件

# 删除文件
rm file.txt

# 删除前确认
rm -i file.txt

# 强制删除不提示
rm -f file.txt

# 删除目录及其内容(危险!)
rm -rf /var/www/html

# 显示删除过程
rm -v file.txt

警告rm -rf 是 Linux 最危险的命令之一,路径写错可能删库。建议:

  • 删除前先用 ls 确认路径
  • 重要操作用 rm -i 强制确认
  • 永远不要执行 rm -rf /

mkdir:创建目录

# 创建单层目录
mkdir test

# 递归创建多层目录
mkdir -p /var/www/html/static/css

# 创建时指定权限
mkdir -m 755 test

-p 参数最实用——一次性创建多层嵌套目录,已存在也不报错。

touch:创建空文件

# 创建空文件
touch newfile.txt

# 同时创建多个
touch a.txt b.txt c.txt

# 更新文件时间戳(文件已存在时)
touch existing.txt

find:查找文件

# 按名称查找
find /var/www -name "*.php"

# 按名称查找(不区分大小写)
find /var/www -iname "*.JPG"

# 按类型查找(f=文件,d=目录)
find /var/www -type d -name "uploads"

# 按大小查找(大于10M的文件)
find /var/log -size +10M

# 按时间查找(7天内修改的文件)
find /var/www -mtime -7

# 查找并执行命令(删除30天前的日志)
find /var/log -name "*.log" -mtime +30 -exec rm {} \;

实战:找出占空间最大的文件:

find / -type f -size +100M -exec ls -lh {} \; 2>/dev/null

实用组合示例

备份网站目录

cp -r /var/www/html /backup/html_$(date +%Y%m%d)

找出最近修改的5个文件

ls -lt /var/www/html | head -6

统计目录下文件数量

ls -l /var/www/html | grep -v ^d | wc -l

批量重命名 .txt 为 .bak

for f in *.txt; do mv "$f" "${f%.txt}.bak"; done

总结

| 命令 | 作用 | 关键参数 |

|——|——|———|

| ls | 列出内容 | -l -a -h -t |

| cd | 切换目录 | – ~ .. |

| cp | 复制 | -r -p |

| mv | 移动/重命名 | -i |

| rm | 删除 | -r -f -i |

| mkdir | 创建目录 | -p |

| touch | 创建空文件 | – |

| find | 查找文件 | -name -size -mtime |

这些命令组合起来基本能搞定日常文件管理 90% 的需求。

本文到此结束