linux系统以文件为核心设计理念,所有硬件、进程、配置都抽象为文件,掌握文件系统常用命令是linux使用的基础。这些命令覆盖了文件查看、目录操作、文件管理、权限调整等多个核心场景,能满足绝大多数日常操作需求。

文件与目录查看命令
ls命令
ls是最常用的文件查看命令,用于列出当前目录下的文件和子目录,支持多种参数调整输出内容。
常用参数说明:
- -l:以长格式显示文件详细信息,包含权限、所有者、大小、修改时间等
- -a:显示所有文件,包括以.开头的隐藏文件
- -h:以人类可读的格式显示文件大小,如KB、MB、GB
- -R:递归列出所有子目录的内容
# 列出当前目录所有文件详细信息,包含隐藏文件,大小可读 ls -lah # 递归列出/home目录下的所有内容 ls -R /home
tree命令
tree命令可以以树状结构展示目录层级,更直观地查看目录结构,部分系统需要手动安装。
# 安装tree命令(centos系统) yum install tree -y # 以树状结构显示当前目录,只显示2层深度 tree -L 2
目录切换与路径操作命令
cd命令
cd用于切换当前工作目录,是最基础的目录操作命令。
# 切换到/home/user目录 cd /home/user # 切换到上一级目录 cd .. # 切换到当前用户家目录 cd ~ # 切换到上一次工作目录 cd -
pwd命令
pwd用于显示当前所在的工作目录的绝对路径,确认当前位置时使用。
# 显示当前目录绝对路径 pwd
文件与目录管理命令
mkdir命令
mkdir用于创建新的目录,支持同时创建多级目录。
# 创建单个目录test mkdir test # 创建多级目录a/b/c mkdir -p a/b/c
touch命令
touch用于创建空文件,也可以修改已有文件的时间戳。
# 创建空文件demo.txt touch demo.txt # 创建多个空文件 touch file1.txt file2.txt file3.txt
cp命令
cp用于复制文件或目录,复制目录时需要添加-r参数。
# 复制文件demo.txt到/tmp目录 cp demo.txt /tmp/ # 复制目录test到/home目录,保留所有属性 cp -rp test /home/
mv命令
mv用于移动文件或目录,也可以用来重命名文件或目录。
# 移动demo.txt到/tmp目录 mv demo.txt /tmp/ # 将file1.txt重命名为file2.txt mv file1.txt file2.txt
rm命令
rm用于删除文件或目录,删除目录需要添加-r参数,操作需谨慎避免误删重要数据。
# 删除文件demo.txt rm demo.txt # 递归删除test目录及所有内容 rm -r test # 强制删除文件不提示确认 rm -f demo.txt
文件内容查看命令
cat命令
cat用于查看文件全部内容,适合查看内容较短的文件。
# 查看demo.txt的全部内容 cat demo.txt # 查看多个文件内容并拼接输出 cat file1.txt file2.txt
more与less命令
more和less用于分页查看长文件内容,more只能向下翻页,less支持上下翻页和搜索。
# 分页查看大文件log.txt more log.txt # 用less查看文件,支持搜索关键词 less log.txt
head与tail命令
head用于查看文件开头内容,tail用于查看文件末尾内容,tail还支持实时追踪文件变化。
# 查看文件前10行 head -n 10 demo.txt # 查看文件后20行 tail -n 20 demo.txt # 实时追踪日志文件新增内容 tail -f /var/log/messages
文件权限与属性修改命令
chmod命令
chmod用于修改文件或目录的权限,支持数字模式和符号模式两种设置方式。
# 数字模式:给文件所有者读写执行权限,组用户和其他用户读执行权限 chmod 755 demo.sh # 符号模式:给所有用户添加写权限 chmod a+w demo.txt
chown命令
chown用于修改文件或目录的所有者和所属组,修改目录需要添加-R参数递归处理。
# 修改demo.txt的所有者为user,所属组为group chown user:group demo.txt # 递归修改test目录的所有者和所属组 chown -R user:group test
文件查找命令
find命令
find用于在指定目录下查找符合条件的文件,支持按名称、大小、修改时间等多种条件查找。
# 在/home目录下查找所有后缀为.txt的文件 find /home -name "*.txt" # 查找当前目录下大于10MB的文件 find . -size +10M # 查找7天内修改过的文件 find . -mtime -7
locate命令
locate基于系统文件数据库查找文件,速度比find快,但需要先更新数据库。
# 更新文件数据库 updatedb # 查找所有包含demo的文件路径 locate demo