Linux命令学习总结之rm命令

命令简介:

rm命令用来删除Linux系统中的文件或目录。通常情况下rm不会删除目录,你必须通过指定参数-r或-R来删除目录。另外rm通常可以将该文件或目录恢复(注意,rm删除文件其实只是将指向数据块的索引点(information nodes)释放,只要不被覆盖,数据其实还在硬盘上。如果想要保证文件的内容无法复原,可以使用命令shred 。 另外一般还是要慎用rm -rf *这样的命令。

执行权限 :All User

指令所在路径:/bin/rm

命令语法:

rm [OPTION]... FILE...

命令参数:

参数

长参数

描叙

-f

--force

强制删除,忽略不存在的文件,从不给出提示。

-i

--interactive

交互模式删除文件,删除文件前给出提示。

-r

--recursive

递归的删除目录下面文件以及子目录下文件。

-R

--recursive

递归的删除目录下面文件以及子目录下文件。

-v

--verbose

显示运行时详细信息

--help

显示命令在线帮助

--version

显示命令版本信息

使用示例:

1:查看获取rm命令的帮助信息。

[root@DB-Server kerry]# man rmRM(1) User Commands RM(1) NAME rm - remove files or directories SYNOPSIS rm [OPTION]... FILE... DESCRIPTION This manual page documents the GNU version of rm. rm removes each specified file. By default, it does not remove directories. If a file is unwritable, the standard input is a tty, and the -f or --force option is not given, rm prompts the user for whether to remove the file. If the response is not affirmative, the file is skipped. OPTIONS Remove (unlink) the FILE(s). -f, --force ignore nonexistent files, never prompt -i, --interactive prompt before any removal --no-preserve-root do not treat ??specially (the default) --preserve-root fail to operate recursively on ?? -r, -R, --recursive remove directories and their contents recursively -v, --verbose explain what is being done --help display this help and exit --version output version information and exit By default, rm does not remove directories. Use the --recursive (-r or -R) option to remove each listed directory, too, along with all of its contents. To remove a file whose name starts with a ?? for example ?foo? use one of these commands: rm -- -foo rm ./-foo Note that if you use rm to remove a file, it is usually possible to recover the contents of that file. If you want more assurance that the contents are truly unrecoverable, consider using shred. AUTHOR Written by Paul Rubin, David MacKenzie, Richard Stallman, and Jim Meyering. REPORTING BUGS Report bugs to <bug-coreutils@gnu.org>. COPYRIGHT Copyright 漏 2006 Free Software Foundation, Inc. This is free software. You may redistribute copies of it under the terms of the GNU General Public License <http://www.gnu.org/licenses/gpl.html>. There is NO WARRANTY, to the extent permitted by law. SEE ALSO chattr(1), shred(1) The full documentation for rm is maintained as a Texinfo manual. If the info and rm programs are properly installed at your site, the command info rm should give you access to the complete manual. rm 5.97 June 2011 RM(1)

[root@DB-Server kerry]# rm --helpUsage: rm [OPTION]... FILE...Remove (unlink) the FILE(s). -f, --force ignore nonexistent files, never prompt -i, --interactive prompt before any removal --no-preserve-root do not treat `/' specially (the default) --preserve-root fail to operate recursively on `/' -r, -R, --recursive remove directories and their contents recursively -v, --verbose explain what is being done --help display this help and exit --version output version information and exit By default, rm does not remove directories. Use the --recursive (-r or -R)option to remove each listed directory, too, along with all of its contents. To remove a file whose name starts with a `-', for example `-foo',use one of these commands: rm -- -foo rm ./-foo Note that if you use rm to remove a file, it is usually possible to recoverthe contents of that file. If you want more assurance that the contents aretruly unrecoverable, consider using shred. Report bugs to bug-coreutils@gnu.org.

2:删除指定文件

如下所示,该目录下有20个文件,删除指定文件后,只剩下19个文件了。

[oracle@DB-Server bdump]$ ls -lrt | wc -l 20 [oracle@DB-Server bdump]$ rm gsp_lgwr_7826.trc [oracle@DB-Server bdump]$ ls -lrt | wc -l 19

3:删除文件显示运行时详细信息

[oracle@DB-Server bdump]$ rm -v gsp_lgwr_4617.trc removed `gsp_lgwr_4617.trc'

4:交互模式下删除文件

如下所示,输入y后就会删除文件,不想删除则数据n

[oracle@DB-Server bdump]$ rm -iv gsp_lgwr_5005.trc rm: remove regular file `gsp_lgwr_5005.trc'? y removed `gsp_lgwr_5005.trc' [oracle@DB-Server bdump]$ rm -iv gsp_lgwr_7826.trc rm: remove regular file `gsp_lgwr_7826.trc'? n

5: 递归删除某个目录下文件以及子目录

如下所示,kerry目录下有test1.txt、 test2.txt 文件,以及子目录tmp, 而子目录下又有文件file1、file2.

[root@DB-Server ~]# tree kerrykerry|-- test1.txt|-- test2.txt`-- tmp |-- file1 `-- file2 1 directory, 4 files[root@DB-Server ~]# rm -rf kerry/

Linux命令学习总结之rm命令 Linux 第1张

6: 删除空目录

[root@DB-Server ~]# mkdir kerry [root@DB-Server ~]# rm -r kerry/ rm: remove directory `kerry/'? y

7:删除目录bdump下的所有trc文件类型的文件。

[oracle@DB-Server bdump]$ lsalert_GSP.log gsp_lgwr_20025.trc gsp_lgwr_5023.trc gsp_p000_4637.trc gsp_p000_4718.trc gsp_p000_5025.trc gsp_p001_4639.trc gsp_p001_4720.trc gsp_p001_5027.trcgsp_lgwr_19915.trc gsp_lgwr_4719.trc gsp_lgwr_5089.trc gsp_p000_4682.trc gsp_p000_4739.trc gsp_p000_5043.trc gsp_p001_4684.trc gsp_p001_4741.trc gsp_p001_5045.trc[oracle@DB-Server bdump]$ rm -v *.trcremoved `gsp_lgwr_19915.trc'removed `gsp_lgwr_20025.trc'removed `gsp_lgwr_4719.trc'removed `gsp_lgwr_5023.trc'removed `gsp_lgwr_5089.trc'removed `gsp_p000_4637.trc'removed `gsp_p000_4682.trc'removed `gsp_p000_4718.trc'removed `gsp_p000_4739.trc'removed `gsp_p000_5025.trc'removed `gsp_p000_5043.trc'removed `gsp_p001_4639.trc'removed `gsp_p001_4684.trc'removed `gsp_p001_4720.trc'removed `gsp_p001_4741.trc'removed `gsp_p001_5027.trc'removed `gsp_p001_5045.trc'

以上所述是本文给大家介绍的Linux命令学习总结之rm命令,希望对大家有所帮助。

参与评论