`

每天一个linux命令(5):rm 命令

阅读更多

昨天学习了创建文件和目录的命令mkdir ,今天学习一下linux中删除文件和目录的命令: rm命令。rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。

rm是一个危险的命令,使用的时候要特别当心,尤其对于新手,否则整个系统就会毁在这个命令(比如在/(根目录)下执行rm * -rf)。所以,我们在执行rm之前最好先确认一下在哪个目录,到底要删除什么东西,操作时保持高度清醒的头脑。

1.命令格式:

rm [选项] 文件… 

2.命令功能:

删除一个目录中的一个或多个文件或目录,如果没有使用- r选项,则rm不会删除目录。如果使用 rm 来删除文件,通常仍可以将该文件恢复原状。

3.命令参数:

    -f, --force    忽略不存在的文件,从不给出提示。

    -i, --interactive 进行交互式删除

    -r, -R, --recursive   指示rm将参数中列出的全部目录和子目录均递归地删除。

    -v, --verbose    详细显示进行的步骤

       --help     显示此帮助信息并退出

       --version  输出版本信息并退出

4.命令实例:

实例一:删除文件file,系统会先询问是否删除。 

命令:

rm 文件名

输出:

[root@localhost test1]# ll

总计 4

-rw-r--r-- 1 root root 56 10-26 14:31 log.log

root@localhost test1]# rm log.log 

rm:是否删除 一般文件 “log.log”? y

root@localhost test1]# ll

总计 0[root@localhost test1]#

说明:

输入rm log.log命令后,系统会询问是否删除,输入y后就会删除文件,不想删除则输入n。

实例二:强行删除file,系统不再提示。 

命令:

rm -f log1.log

输出:

[root@localhost test1]# ll

总计 4

-rw-r--r-- 1 root root 23 10-26 14:40 log1.log

[root@localhost test1]# rm -f log1.log 

[root@localhost test1]# ll

总计 0[root@localhost test1]#

 

实例三:删除任何.log文件;删除前逐一询问确认 

命令:

rm -i *.log

输出:

[root@localhost test1]# ll

总计 8

-rw-r--r-- 1 root root 11 10-26 14:45 log1.log

-rw-r--r-- 1 root root 24 10-26 14:45 log2.log

[root@localhost test1]# rm -i *.log

rm:是否删除 一般文件 “log1.log”? y

rm:是否删除 一般文件 “log2.log”y

[root@localhost test1]# ll

总计 0[root@localhost test1]#

 

实例四:将 test1子目录及子目录中所有档案删除

命令:

rm -r test1

输出:

[root@localhost test]# ll

总计 24drwxr-xr-x 7 root root 4096 10-25 18:07 scf

drwxr-xr-x 2 root root 4096 10-26 14:51 test1

drwxr-xr-x 3 root root 4096 10-25 17:44 test2

drwxrwxrwx 2 root root 4096 10-25 17:46 test3

drwxr-xr-x 2 root root 4096 10-25 17:56 test4

drwxr-xr-x 3 root root 4096 10-25 17:56 test5

[root@localhost test]# rm -r test1

rm:是否进入目录 “test1”? y

rm:是否删除 一般文件 “test1/log3.log”? y

rm:是否删除 目录 “test1”y

[root@localhost test]# ll

总计 20drwxr-xr-x 7 root root 4096 10-25 18:07 scf

drwxr-xr-x 3 root root 4096 10-25 17:44 test2

drwxrwxrwx 2 root root 4096 10-25 17:46 test3

drwxr-xr-x 2 root root 4096 10-25 17:56 test4

drwxr-xr-x 3 root root 4096 10-25 17:56 test5

[root@localhost test]#

 

实例五:rm -rf test2命令会将 test2 子目录及子目录中所有档案删除,并且不用一一确认

命令:

rm -rf  test2 

输出:

[root@localhost test]# rm -rf test2

[root@localhost test]# ll

总计 16drwxr-xr-x 7 root root 4096 10-25 18:07 scf

drwxrwxrwx 2 root root 4096 10-25 17:46 test3

drwxr-xr-x 2 root root 4096 10-25 17:56 test4

drwxr-xr-x 3 root root 4096 10-25 17:56 test5

[root@localhost test]#

 

实例六:删除以 -f 开头的文件

命令:

rm -- -f

输出:

[root@localhost test]# touch -- -f

[root@localhost test]# ls -- -f

-f[root@localhost test]# rm -- -f

rm:是否删除 一般空文件 “-f”? y

[root@localhost test]# ls -- -f

ls: -f: 没有那个文件或目录

[root@localhost test]#

也可以使用下面的操作步骤:

[root@localhost test]# touch ./-f

[root@localhost test]# ls ./-f

./-f[root@localhost test]# rm ./-f

rm:是否删除 一般空文件 “./-f”? y

[root@localhost test]#

 

实例七:自定义回收站功能

命令:

myrm(){ D=/tmp/$(date +%Y%m%d%H%M%S); mkdir -p $D; mv "$@" $D && echo "moved to $D ok"; }

 

输出:

[root@localhost test]# myrm(){ D=/tmp/$(date +%Y%m%d%H%M%S); mkdir -p $D; mv "$@" $D && echo "moved to $D ok"; }

[root@localhost test]# alias rm='myrm'

[root@localhost test]# touch 1.log 2.log 3.log

[root@localhost test]# ll

总计 16

-rw-r--r-- 1 root root    0 10-26 15:08 1.log

-rw-r--r-- 1 root root    0 10-26 15:08 2.log

-rw-r--r-- 1 root root    0 10-26 15:08 3.log

drwxr-xr-x 7 root root 4096 10-25 18:07 scf

drwxrwxrwx 2 root root 4096 10-25 17:46 test3

drwxr-xr-x 2 root root 4096 10-25 17:56 test4

drwxr-xr-x 3 root root 4096 10-25 17:56 test5

[root@localhost test]# rm [123].log

moved to /tmp/20121026150901 ok

[root@localhost test]# ll

总计 16drwxr-xr-x 7 root root 4096 10-25 18:07 scf

drwxrwxrwx 2 root root 4096 10-25 17:46 test3

drwxr-xr-x 2 root root 4096 10-25 17:56 test4

drwxr-xr-x 3 root root 4096 10-25 17:56 test5

[root@localhost test]# ls /tmp/20121026150901/

1.log  2.log  3.log

[root@localhost test]#

说明

上面的操作过程模拟了回收站的效果,即删除文件的时候只是把文件放到一个临时目录中,这样在需要的时候还可以恢复过来。

 

参考资料:

         http://codingstandards.iteye.com/blog/983531 

分享到:
评论

相关推荐

    Linux命令基础5:rm命令和延伸

    rm 是常用的命令,该命令的功能为删除一个录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。 rm 是一个危险的命令,使用的时候...

    Linux rm命令:删除文件或目录

    Linux rm命令:删除文件或目录

    Linux服务器rm命令替换

    按照本说明可以实现替换linux服务器的rm命令;按照本说明可以实现替换linux服务器的rm命令。

    linux 系统执行命令文件rm

    最近用腾讯云服务器,然后“腾讯安全告警”,通过腾讯云管理平台,将告警的木马隔离了,然后系统下的rm文件被删掉了,然后想操作删除命令就不行了,所以去另外一个系统下载了该文件替换,可用

    Linux命令每天必学(5)之rm命令

    昨天学习了创建文件和目录的命令mkdir ,今天学习一下linux中删除文件和目录的命令: rm命令。rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均...

    5.linux命令集之rm命令

    Linux命令是对Linux系统进行管理的命令,是Linux系统正常运行的核心。每日更新一条命令供大家学习,内容详细,包含实操案例,适用于零基础人群。

    rm.bat 在win下模拟linux rm命令的bat文件

    rm.bat 在win下模拟linux rm命令的bat文件

    恢复被rm命令删除的文件:rlinux,开源

    适合系统:debian 系,deb 安装包。 用于 Fedora/RedHat Linux 平台的 R-Linux 自行到官网下载 用于 Debian/Ubuntu Linux 平台的 R-...恢复被rm命令删除的文件:rlinux https://www.bilibili.com/video/BV1KH4y1r7RY/

    linux中rm命令使用详解

    前面学习了创建文件和目录的命令mkdir ,今天学习一下linux中删除文件和目录的命令: rm命令。rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均...

    Linux目录文件基本命令

    创建目录(文件夹)rmdir命令:删除空目录touch命令:创建文件及修改文件时间戳ln命令:在文件之间建立链接ext 文件系统(Linux 文件系统)ln创建链接的深度剖析cp命令:复制文件和目录rm命令:删除文件或目录mv命令...

    Linux命令学习总结之rm命令

    rm命令用来删除Linux系统中的文件或目录。通常情况下rm不会删除目录,你必须通过指定参数-r或-R来删除目录。另外rm通常可以将该文件或目录恢复(注意,rm删除文件其实只是将指向数据块的索引点(information nodes)...

    Linux 基础命令 — rm

    命令:rm 删除文件 用法:rm [OPTION]… FILE… rm 选项 文件 命令选项 [root@fp-21 ~]# rm --help -f, --force # 强制,不提示是否删除 -i # 每次删除前都提示( 默认参数 ) -I # 在删除三个以上的文件之前或...

    linux常用命令大全50个Linux常用命令.pdf

    5. rmdir:用于删除一个空目录,例如,若要删除当前目录中的test目录,可以使用命令rmdir test。 6. rm:用于删除指定文件或目录,例如,若要删除当前目录中的test.txt文件,可以使用命令rm test.txt。 7. cp:用于...

    linux命令练习题

    1. 写出完成下列功能所需要的命令: a) 修改文件“a.c”的权限为:所有者,可读可写;其他人,只读。 答:chmod 604 a.c b) 删除当前目录下所有以“.o”结尾的文件。 答:rm *.o

    基础的Linux常用命令

    在此我就介绍几条比较基础的Linux命令帮助大家入门。 1. man 对你熟悉或不熟悉的命令提供帮助解释 eg:man ls 就可以查看ls相关的用法 注:按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止当前程序运行。 2. ls...

    常用的60个Linux常用命令

    以下是对常用的60个Linux命令的详细说明: 文件和目录管理命令 ls: 列出目录内容 cd: 切换工作目录 mkdir: 创建目录 rm: 删除文件或目录 cp: 复制文件或目录 mv: 移动或重命名文件/目录 ln: 创建链接 pwd: 显示当前...

    Linux删除命令rm用法详解.doc

    在Linux系统删除文件和目录用的命令是 rm (英文全拼:remove),命令也比较好记,就两个字母,但是这个命令对于新手来说,它的危险指数是非常高的,如果一旦操作成误删除了,想要恢复数据是非常困难的,应为Linux...

    常用的Linux命令大全

    用于查找一些常用的linux命令,帮助人员进行开发 1.Linux 管理文件和目录的命令 命令 功能 命令 功能 pwd 显示当前目录 ls 查看目录下的内容 cd 改变所在目录 cat 显示文件的内容 grep 在文件中查找某字符 cp 复制...

    Linux教程,主要内容:Linux 命令、Linux 系统运维、软件运维、精选常用Shell脚本.zip

    查看 Linux 命令帮助信息 - 关键词:help, whatis, info, which, whereis, man Linux 文件目录管理 - 关键词:cd, ls, pwd, mkdir, rmdir, tree, touch, ln, rename, stat, file, chmod, chown, locate, find, cp, ...

    Linux命令基础6:rmdir命令和延伸

    linux 中删除空目录命令: ... rmdir 是常用的命令,该命令的功能是删除空目录,一个目录被删除之前必须是空的。(注意,rm – r dir 命令可代替 rmdir,但是有很大危险性。)删除某目录时也必须具有对父目录的写权限。

Global site tag (gtag.js) - Google Analytics