Appearance
第5章:文件操作命令
5.1 文件创建与删除
touch命令
- 功能:创建空文件或更新文件的修改时间
- 格式:
touch 文件名 - 示例:bash
$ touch file.txt $ touch file1.txt file2.txt file3.txt
rm命令
- 功能:删除文件
- 常用选项:
-f:强制删除,不提示-i:删除前提示
- 警告:
rm -rf命令非常危险,可能删除整个系统 - 示例:bash
$ rm file.txt $ rm -f file.txt $ rm file1.txt file2.txt
5.2 文件复制与移动
cp命令
- 功能:复制文件或目录
- 常用选项:
-i:复制前提示-r:递归复制目录-v:显示复制过程
- 示例:bash
$ cp file.txt file_copy.txt $ cp -r dir1 dir2 $ cp file.txt /home/user/Documents/
mv命令
- 功能:移动文件或目录,也可用于重命名
- 常用选项:
-i:移动前提示-v:显示移动过程
- 示例:bash
$ mv file.txt new_name.txt # 重命名 $ mv file.txt /home/user/Documents/ # 移动文件 $ mv dir1 dir2 # 移动目录
5.3 文件查看命令
cat命令
- 功能:查看文件内容(适合小文件)
- 常用选项:
-n:显示行号-A:显示所有字符(包括换行符、制表符等)
- 示例:bash
$ cat file.txt $ cat -n file.txt
more命令
- 功能:分页查看文件内容(适合大文件)
- 操作:
- 按
空格键或Page Down向下翻页 - 按
Enter键向下一行 - 按
q退出
- 按
- 示例:bash
$ more large_file.txt
less命令
- 功能:分页查看文件内容(功能更强大)
- 操作:
- 按
空格键或Page Down向下翻页 - 按
Page Up向上翻页 - 按
/键搜索 - 按
q退出
- 按
- 示例:bash
$ less large_file.txt
head命令
- 功能:查看文件的前几行
- 常用选项:
-n:指定显示的行数(默认10行)
- 示例:bash
$ head file.txt $ head -n 20 file.txt
tail命令
- 功能:查看文件的后几行
- 常用选项:
-n:指定显示的行数(默认10行)-f:实时监控文件变化
- 示例:bash
$ tail file.txt $ tail -n 20 file.txt $ tail -f /var/log/syslog # 实时监控日志文件
5.4 文件搜索命令
find命令
- 功能:根据条件搜索文件
- 常用选项:
-name:按文件名搜索-type:按文件类型搜索(f:文件, d:目录)-size:按文件大小搜索-mtime:按修改时间搜索
- 示例:bash
$ find /home -name "*.txt" # 搜索所有.txt文件 $ find /tmp -type f -mtime -1 # 搜索1天内修改的文件 $ find /var -size +10M # 搜索大于10MB的文件
locate命令
- 功能:快速搜索文件(基于数据库)
- 注意:需要定期更新数据库(使用
updatedb命令) - 示例:bash
$ locate file.txt $ locate "*.jpg"
5.5 文件内容搜索
grep命令
- 功能:在文件中搜索关键词
- 常用选项:
-i:忽略大小写-n:显示行号-v:反向搜索(显示不包含关键词的行)-r:递归搜索目录
- 示例:bash
$ grep "hello" file.txt $ grep -n "error" /var/log/syslog $ grep -r "test" /home/user
egrep命令
- 功能:支持正则表达式的grep
- 示例:bash
$ egrep "^[0-9]+" file.txt # 搜索以数字开头的行 $ egrep "hello|world" file.txt # 搜索包含hello或world的行
5.6 实战练习:文件创建、查看、搜索综合操作
练习1:文件创建与查看
创建一个测试文件:
bashtouch test.txt向文件中写入内容:
bashecho "Hello, Linux!" > test.txt echo "This is a test file." >> test.txt echo "Learning Linux commands is fun." >> test.txt查看文件内容:
bashcat test.txt查看文件的前2行:
bashhead -n 2 test.txt查看文件的后2行:
bashtail -n 2 test.txt
练习2:文件复制与移动
复制test.txt文件:
bashcp test.txt test_copy.txt查看复制后的文件:
bashcat test_copy.txt重命名文件:
bashmv test_copy.txt test_backup.txt查看重命名后的文件:
bashls -la创建一个目录并移动文件:
bashmkdir backup mv test_backup.txt backup/查看文件是否移动成功:
bashls -la backup/
练习3:文件搜索与内容搜索
在当前目录创建几个测试文件:
bashtouch file1.txt file2.txt file3.md echo "This is file1" > file1.txt echo "This is file2" > file2.txt echo "This is file3" > file3.md搜索所有.txt文件:
bashfind . -name "*.txt"搜索包含"file"关键词的文件:
bashgrep -r "file" .搜索包含"file1"关键词的文件并显示行号:
bashgrep -n "file1" .反向搜索不包含"file1"关键词的文件:
bashgrep -v "file1" file1.txt
练习4:文件删除
删除test.txt文件:
bashrm test.txt删除backup目录及其内容:
bashrm -r backup删除所有测试文件:
bashrm file1.txt file2.txt file3.md查看当前目录:
bashls -la
通过这些练习,你应该能够熟练掌握Linux的文件操作命令,为后续的学习打下基础。
