linux文件的完整命令
linux文件的完整命令详细介绍
在 Linux 系统中,处理文件的命令非常丰富,涵盖文件的创建、查看、编辑、删除、权限管理、搜索、压缩等操作。以下是常用的文件操作命令分类及详细说明,附带示例帮助理解:
一、文件查看与编辑
1. 查看文件内容
| 命令 | 说明 | 示例 |
|---|---|---|
cat |
显示文件全部内容(适合小文件) | cat filename.txt 显示文件内容cat file1 file2 > merged.txt 合并文件 |
more |
分页查看(按空格翻页,按q退出) |
more large_file.log |
less |
增强版分页查看(支持搜索,按/关键词查找,按n下一个匹配) |
less access.log |
head |
查看文件前 10 行(默认),可通过-n指定行数 |
head -n 20 log.txt 查看前 20 行 |
tail |
查看文件末尾 10 行(默认),-f实时监控文件更新(如日志) |
tail -f app.log 实时追踪日志更新 |
nl |
显示文件内容并添加行号 | nl code.py |
2. 编辑文件
| 命令 | 说明 | 示例 |
|---|---|---|
nano |
简单易用的文本编辑器(适合新手) | nano config.conf 打开并编辑文件 |
vim |
强大的命令行编辑器(需掌握模式切换:输入模式i,命令模式ESC) |
vim script.sh 编辑脚本:w 保存,:q 退出,:wq 保存并退出 |
emacs |
功能复杂的编辑器(适合开发) | emacs README.md |
二、文件创建与删除
1. 创建文件 / 目录
| 命令 | 说明 | 示例 |
|---|---|---|
touch |
创建空文件,或更新文件时间戳 | touch new_file.txt 创建空文件 |
mkdir |
创建目录 | mkdir dir_name 创建单目录mkdir -p parent/child 递归创建多级目录 |
echo |
写入内容到文件(>覆盖,>>追加) |
echo "Hello World" > hello.txt 覆盖写入echo "Line 2" >> hello.txt 追加 |
2. 删除文件 / 目录
| 命令 | 说明 | 示例 |
|---|---|---|
rm |
删除文件或目录(目录需-r选项,强制删除用-f) |
rm file.txt 删除文件rm -r dir 删除目录(含内容)rm -rf dir 强制删除非空目录 |
rmdir |
删除空目录 | rmdir empty_dir 仅能删除空目录 |
三、文件复制与移动
| 命令 | 说明 | 示例 |
|---|---|---|
cp |
复制文件 / 目录(目录需-r) |
cp source.txt dest.txt 复制文件cp -r src_dir dest_dir 复制目录 |
mv |
移动文件(重命名或改变路径) | mv old_name.txt new_name.txt 重命名mv file.txt dir/ 移动到目录 |
四、文件属性与权限
1. 查看文件信息
| 命令 | 说明 | 示例 |
|---|---|---|
ls |
列出文件 / 目录(常用选项:-l详情,-a显示隐藏文件,-h易读大小) |
ls -l 列表详情ls -alh 显示所有文件(含隐藏)并带大小单位 |
stat |
显示文件详细元数据(时间、权限、inode 等) | stat document.pdf |
2. 修改权限
| 命令 | 说明 | 示例 |
|---|---|---|
chmod |
修改文件权限(三种用户:所有者u、组g、其他o;权限:读r、写w、执行x) |
符号模式:chmod u+x script.sh 给所有者添加执行权限数字模式: chmod 755 file(所有者rwx,组和其他rx) |
chown |
修改文件所有者 / 所属组 | chown user:group file.txt 修改所有者和组chown -R user dir/ 递归修改目录下所有文件 |
3. 查看 / 修改时间戳
| 命令 | 说明 | 示例 |
|---|---|---|
touch |
更新文件最后访问 / 修改时间(创建空文件时也可用) | touch -t 202504291230 file.txt 修改时间为 2025 年 4 月 29 日 12:30 |
五、文件搜索与过滤
| 命令 | 说明 | 示例 |
|---|---|---|
find |
按条件查找文件(路径、名称、大小、时间等) | find /var/log -name "*.log" 在 /var/log 下找所有.log 文件find . -size +10M 找当前目录下大于 10MB 的文件 |
grep |
在文件中搜索关键词(支持正则表达式) | grep "error" log.txt 查找包含 "error" 的行grep -i "Error" log.txt 不区分大小写查找 |
which |
查找命令的执行路径 | which python 查看 Python 命令路径 |
whereis |
查找文件的二进制、手册、源代码路径 | whereis sshd 查找 sshd 相关文件 |
六、文件压缩与解压缩
| 命令 | 说明 | 示例 |
|---|---|---|
gzip |
压缩成.gz格式(不保留原文件,需配合gunzip解压) |
gzip file.txt 生成 file.txt.gzgunzip file.txt.gz 解压 |
tar |
打包并压缩(常用格式:.tar.gz、.tar.bz2) |
打包压缩:tar -czvf archive.tar.gz dir/(-c创建,-zgzip 压缩,-v显示过程,-f指定文件名)解压: tar -xzvf archive.tar.gz |
zip/unzip |
压缩成.zip格式(跨平台) |
zip -r myzip.zip dir/ 压缩目录unzip myzip.zip 解压 |
七、其他实用命令
| 命令 | 说明 | 示例 |
|---|---|---|
du |
查看目录 / 文件大小(-h易读格式,-s统计总大小) |
du -sh ~ 查看用户主目录大小 |
df |
查看磁盘空间使用情况 | df -h 以易读格式显示磁盘分区信息 |
wc |
统计文件的行数、单词数、字符数 | wc -l file.txt 统计行数 |
ln |
创建链接(-s创建软链接,硬链接无需选项) |
ln -s target_file link_name 创建软链接 |
diff |
比较两个文件的差异 | diff file1.txt file2.txt 显示两文件不同之处 |
命令通用格式
bash
命令 选项 参数1 参数2 .
- 选项:控制命令行为(如
-l、-h),通常以-(短选项)或--(长选项,如--verbose)开头。 - 参数:操作对象(如文件名、路径)。
常用通配符
*:匹配任意字符(如*.txt匹配所有.txt 文件)。?:匹配单个字符(如file?.txt匹配 file1.txt、file2.txt 等)。[abc]:匹配括号内任意字符(如[0-9]匹配数字)。[!abc]:匹配不在括号内的字符(如[!0-9]匹配非数字)。
通过以上命令,可覆盖 Linux 系统中 90% 以上的文件操作需求。建议通过man 命令(如man ls)查看官方手册,获取更详细的选项和用法说明。