Linux 常用命令 - rm 【删除文件或目录】

简介

rm 命令源于英文单词 “remove”,它用于删除文件或目录。rm 是 Linux 系统中最基本的命令之一,用于删除指定的文件或目录。默认情况下,rm 不会删除目录,但可以通过递归删除选项来实现。

使用方式

rm [选项]... [文件]...

常用选项

  • -f, --force:强制删除,忽略不存在的文件和参数,不进行提示。

  • -i:在删除每个文件前提示用户是否确认删除。

  • -I:在删除超过三个文件或递归删除时提示一次。相比于 -i 每个文件都要提示并需要用户操作,该选项会更简洁,同时也能避免了大部分的错误操作。

  • --interactive[=WHEN]:根据 WHEN 来决定何时提示,可选 never、once(等同于 -I) 或 always(等同于-i),当不提供 WHEN 参数时每次都提示。

  • --one-file-system:在递归删除目录时,跳过与命令行参数指定目录处于不同文件系统的目录。避免跨文件系统的删除操作。

  • --no-preserve-root:不特别对待根目录 /,一般情况下系统对于根目录的操作会有保护机制,而使用该选项则会将根目录作为普通目录对待,禁用保护机制。

  • --preserve-root[=all]:不删除根目录(这是默认行为),加了 all 参数会拒绝删除与父目录在不同设备上的命令行参数。

  • -r, -R, --recursive:递归删除指定目录及其内容。

  • -d, --dir:删除空目录。

  • -v, --verbose:进行删除操作时打印出正在执行的操作。

  • --help:显示帮助信息。

  • --version:显示版本信息。

参考示例

1. 删除单个文件

rm a.txt

没有错误提示表明删除成功:

jay@jaylinuxlenovo:~/test$ rm a.txt
jay@jaylinuxlenovo:~/test$ 

若此时再次执行删除指令由于文件不存在会报错:

jay@jaylinuxlenovo:~/test$ rm a.txt
rm: cannot remove 'a.txt': No such file or directory

2. 交互式删除多个文件

rm -i a.txt b.txt c.txt

使用 -i 选项可以在每个文件即将被删除时进行确认:

jay@jaylinuxlenovo:~/test$ rm -i a.txt b.txt c.txt 
rm: remove regular file 'a.txt'? y
rm: remove regular file 'b.txt'? y
rm: remove regular file 'c.txt'? y

3. 强制删除一个文件

rm -f a.txt

使用 -f 可以强制删除一个文件,并且如果文件不存在,也不会报错:

jay@jaylinuxlenovo:~/test$ rm a.txt
rm: cannot remove 'a.txt': No such file or directory
jay@jaylinuxlenovo:~/test$ rm -f a.txt
jay@jaylinuxlenovo:~/test$ 

4. 递归删除目录及其内部的文件

rm -r test_dir

使用 -r 选项可以递归删除名为 test_dir 的目录及目录内的子目录和文件:

jay@jaylinuxlenovo:~/test$ rm -r test_dir
jay@jaylinuxlenovo:~/test$ 

5. 显示具体的删除信息

rm -rv test_dir/

使用 -r 和 -v 的组合选项 -rv 删除目录 test_dir 及其内部的所有文件同时打印出详细的删除信息:

jay@jaylinuxlenovo:~/test$ rm -rv test_dir/
removed 'test_dir/sub_dir/aa.txt'
removed directory 'test_dir/sub_dir'
removed 'test_dir/c.txt'
removed 'test_dir/a.txt'
removed directory 'test_dir/'

注意事项

  • 使用 rm 命令时,一旦文件被删除,系统默认情况下不会将其放入回收站,而是直接从文件系统中移除。因此,使用 rm 命令时要格外小心。

  • rm 命令删除的文件可能部分内容可以被恢复,如果需要确保文件内容不可恢复,可以考虑使用 shred 命令。

相关推荐

  1. Linux 命令 - rm删除文件目录

    2024-06-18 16:48:13       10 阅读
  2. linux - rm命令删除文件到垃圾箱

    2024-06-18 16:48:13       15 阅读
  3. 6.Linux命令---文件目录管理(3)

    2024-06-18 16:48:13       11 阅读
  4. Linux 命令 - userdel 【删除用户】

    2024-06-18 16:48:13       7 阅读
  5. Linux 命令 - cd 【切换目录

    2024-06-18 16:48:13       8 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-18 16:48:13       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-18 16:48:13       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-18 16:48:13       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-18 16:48:13       20 阅读

热门阅读

  1. 【二维码】

    2024-06-18 16:48:13       6 阅读
  2. Docker的安装 - 简单易懂

    2024-06-18 16:48:13       4 阅读
  3. 常见端口大全

    2024-06-18 16:48:13       5 阅读
  4. 证明 几何分布 的期望和方差

    2024-06-18 16:48:13       6 阅读
  5. 椋鸟C++笔记#5:C++内存管理

    2024-06-18 16:48:13       6 阅读
  6. 【网络协议栈】IGMP

    2024-06-18 16:48:13       5 阅读
  7. Jenkins简要说明

    2024-06-18 16:48:13       4 阅读
  8. 【Mysql】 MySQL索引的使用

    2024-06-18 16:48:13       5 阅读
  9. 安装docker+mysql的一些坑

    2024-06-18 16:48:13       5 阅读
  10. C++的标准容器及其应用

    2024-06-18 16:48:13       5 阅读
  11. WDF驱动开发-工作项

    2024-06-18 16:48:13       8 阅读