rm
在类似Unix的操作系统上,rm命令删除文件。
查看英文版
1 rm 运行系统环境
2 rm 描述
3 rm 语法
4 rm 例子
rm 运行系统环境
Linux
rm 描述
rm删除命令行上指定的每个文件。默认情况下,它不会删除目录。
当RM与执行-r或-R选项,它递归地删除任何匹配的目录,它们的子目录,它们包含的所有文件。有关详细信息,请参见下面的删除目录。
删除过程将文件系统中的文件名与其关联的数据断开链接,并将存储设备上的该空间标记为将来的写入可用。换句话说,删除文件时,文件中的数据不会更改,但不再与文件名关联。
数据本身不会被破坏,但是在与rm取消链接之后,将变得不可访问。明智地删除文件!这不像在Windows回收站中放东西。一旦你的RM文件或目录,也没有办法将其复原。
如果要完全擦除磁盘上的数据,请使用shred命令。shred将覆盖文件的内容,以便以后无法重建它们。
查看英文版
rm 语法
rm [-f | --force] {[-i | --interactive[=always]] | [-I | --interactive=once] | [--interactive=never]} [--one-file-system] [--no-preserve-root | --preserve-root] [-r | -R | --recursive] [-d | --dir] [-v | --verbose] FILE...
rm --help
rm --version
选件
-f, --force |
忽略不存在的文件,并且在删除之前永远不会提示。 |
-i | 每次移除前均提示。 |
-I | 在删除三个以上的文件之前或在递归删除时提示一次。该选项比-i更具侵入性,但仍然可以防止大多数错误。 |
--interactive [ =WHEN] | 根据WHEN提示:never,once(-I)或alway(-i)。如果未指定WHEN,则始终提示。 |
--on-file-system | 递归删除层次结构时,请跳过文件系统上与相应命令行参数不同的任何目录 |
--no-preserve-root | 请勿以任何特殊方式处理“ / ”(根目录)。 |
--preserve-root | 不要删除“ / ”(根目录),这是默认行为。 |
-r, -R, --recursive |
递归删除目录及其内容。 |
-d,--dir | 删除空目录。如果目录为空,此选项允许您在不指定-r / -R / --recursive的情况下删除目录。换句话说,rm -d等效于使用rmdir。 |
-v,--verbose | 详细模式;随时说明正在做什么。 |
- help | 显示帮助消息,然后退出。 |
- version | 显示版本信息,然后退出。 |
使用说明
如果给出了-I / --interactive = once选项,并且文件数超过三个,或者指定了-r / -R / --recursive选项,则rm将在删除任何内容之前提示。如果用户对提示不回答“是/ y / y ”,则整个命令将中止。
如果文件不可写,stdin是terminal,并且没有给出-f / --force选项,或者没有给出-i或--interactive = always选项,则rm提示用户是否删除文件。如果响应不是yes / y / Y,则跳过文件。
删除目录
缺省情况下,rm不删除目录。但是,如果指定了-r / -R / --recursive选项,则rm将删除所有匹配的目录及其内容。
如果指定目录为空,则可以使用-d / --dir选项将其删除。
文件名以破折号开头
要删除名称以破折号(“ - ”)开头的文件,可以在文件名之前分别指定双破折号(“ - ”)。此多余的破折号是必需的,以便rm不会将文件名误解为选项。
例如,如果当前目录中有一个名为“ -file.txt ”的文件,则可以使用以下命令将其删除
rm--file.txt
或者,您可以通过使用pathname引用来删除它。例如,如果文件“ -file.txt ”位于目录“ / home / hope ”中,则可以使用以下命令将其删除:
rm /home/hope/-file.txt
...或者,如果/ home / hope当前是您的工作目录,
rm ./-file.txt
...也可以。
查看英文版
rm 例子
rm myfile.txt
删除文件myfile.txt。如果文件是写保护的,将提示您确认您确实要删除它。
rm -f myfile.txt
删除文件myfile.txt。即使文件是写保护的,也不会提示您。如果rm可以删除文件,它将删除。
R M *
删除工作目录中的所有文件。如果它是写保护的,在rm删除它之前会提示您。
rm -f *
删除工作目录中的所有文件。rm不会以任何理由提示您删除它们。
rm -i *
尝试删除工作目录中的每个文件,但在每个文件之前提示确认。
rm -I *
删除工作目录中的每个文件;提示确认是否删除三个以上的文件。
rm -r mydirectory
删除目录mydirectory,以及其中包含的所有文件和目录。如果rm尝试删除的文件或目录具有写保护,则系统将提示您确保确实要删除它。
rm -rf mydirectory
与上面的命令相同,但是不会提示您;如果rm可以删除文件,它将删除。
查看英文版