今天学习一下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
总计
-rw-r--r-- root root - : log.log
root@localhost test1]# rm log.log
rm:是否删除 一般文件 “log.log”? y
root@localhost test1]# ll
总计 [root@localhost test1]#

说明:

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

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

命令:

rm -f log1.log

输出:

 [root@localhost test1]# ll
总计
-rw-r--r-- root root - : log1.log
[root@localhost test1]# rm -f log1.log
[root@localhost test1]# ll
总计 [root@localhost test1]#

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

命令:

rm -i *.log

输出:

 [root@localhost test1]# ll
总计
-rw-r--r-- root root - : log1.log
-rw-r--r-- root root - : log2.log
[root@localhost test1]# rm -i *.log
rm:是否删除 一般文件 “log1.log”? y
rm:是否删除 一般文件 “log2.log”? y
[root@localhost test1]# ll
总计 [root@localhost test1]#

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

命令:

rm -r test1

输出:

 [root@localhost test]# ll
总计 24drwxr-xr-x root root - : scf
drwxr-xr-x root root - : test1
drwxr-xr-x root root - : test2
drwxrwxrwx root root - : test3
drwxr-xr-x root root - : test4
drwxr-xr-x root root - : 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 root root - : scf
drwxr-xr-x root root - : test2
drwxrwxrwx root root - : test3
drwxr-xr-x root root - : test4
drwxr-xr-x root root - : test5
[root@localhost test]#

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

命令:

rm -rf  test2

输出:

 [root@localhost test]# rm -rf test2
[root@localhost test]# ll
总计 16drwxr-xr-x root root - : scf
drwxrwxrwx root root - : test3
drwxr-xr-x root root - : test4
drwxr-xr-x root root - : 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 .log .log .log
[root@localhost test]# ll
总计
-rw-r--r-- root root - : .log
-rw-r--r-- root root - : .log
-rw-r--r-- root root - : .log
drwxr-xr-x root root - : scf
drwxrwxrwx root root - : test3
drwxr-xr-x root root - : test4
drwxr-xr-x root root - : test5
[root@localhost test]# rm [].log
moved to /tmp/ ok
[root@localhost test]# ll
总计 16drwxr-xr-x root root - : scf
drwxrwxrwx root root - : test3
drwxr-xr-x root root - : test4
drwxr-xr-x root root - : test5
[root@localhost test]# ls /tmp//
.log .log .log
[root@localhost test]#

说明:

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

每天一个linux命令:【转载】rm命令的更多相关文章

  1. 将linux下的rm命令改造成移动文件至回收站【转】

    转自:http://blog.csdn.net/a3470194/article/details/16863803 [-] 将linux下的rm命令改造成移动文件至回收站 将AIX下的rm命令改造成移 ...

  2. linux下修改rm命令防止误删除

    前言:相信很多朋友都遇到过在linux下用rm命令误删除文件的时候,此刻的心中仿佛有无数的羊驼在奔腾.那么怎么防止这种情况发生呢?当然是有方法的,我们可以写一个shell脚本,改变一下rm命令的作用. ...

  3. linux常用命令:rm 命令

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

  4. linux命令:rm 命令

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

  5. 将linux下的rm命令改造成移动文件至回收站

    将linux下的rm命令改造成移动文件至回收站 rm是Linux下文件删除的命令,它是Linux下非常强大却又非常危险的一条命令,特别是rm -rf有时候强大到让你欲哭无泪,当你想清除当前目录下的所有 ...

  6. 全网最详细的Linux命令系列-rm命令

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

  7. 将linux下的rm命令改造成mv到指定的目录下

    rm是Linux下文件删除的命令,它是Linux下非常强大却又非常危险的一条命令,特别是rm -rf有时候强大到让你欲哭无泪,当你想清除当前目录下的所有文件和目录时,很简单#rm -rf ./*这没什 ...

  8. linux中使用rm命令将文件移到回收站的方法

    今天在终端下,看到我的用户目录下有个-的文件夹(maven生成),相要删除收回点空间,习惯性的用命令 rm -rf ~ ,一回车,猛然想起的时候已经来不及了,世界一下子清静了,想死的心都有了! 没错, ...

  9. Linux中查看jdk安装目录、Linux卸载jdk、rpm命令、rm命令参数

    一.查看jdk安装目录 [root@node001 ~]# whereis java java: /usr/bin/java /usr/local/java #java执行路径 [root@node0 ...

  10. linux常用命令(4)rm命令

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

随机推荐

  1. saga+.net core 分布式事务处理

    Apache ServiceComb Saga 是一个微服务应用的数据最终一致性解决方案 中文官方地址:https://github.com/apache/servicecomb-saga/blob/ ...

  2. Linux 安装rabbitmq 遇到的一些问题

    Linux下防火墙开启相关端口及查看已开启端口 https://www.cnblogs.com/pizitai/p/6518987.htmlhttps://www.cnblogs.com/blog-y ...

  3. 决策树的剪枝,分类回归树CART

    决策树的剪枝 决策树为什么要剪枝?原因就是避免决策树“过拟合”样本.前面的算法生成的决策树非常的详细而庞大,每个属性都被详细地加以考虑,决策树的树叶节点所覆盖的训练样本都是“纯”的.因此用这个决策树来 ...

  4. Asp.Net MVC向视图View传值的三种方法

    本文将总结Asp.Net MVC向视图View传值的三种常见的方法: ----------------------------------------------------------------- ...

  5. RestTemplate请求https忽略证书认证

    RestTemplate是Spring提供的用于访问Rest服务的客户端,提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率.RestTemplate 默认使用J2SE提供的方式( ...

  6. tp5.1升级

    # php think version v5.1.23 # composer update Loading composer repositories with package information ...

  7. POJ1247-Magnificent Meatballs

    http://poj.org/problem?id=1247 Magnificent Meatballs Time Limit: 1000MS   Memory Limit: 10000K Total ...

  8. 数据库原理及应用-数据库管理系统 DBMS

    2018-02-20 14:35:34 数据库管理系统(英语:database management system,缩写:DBMS) 是一种针对对象数据库,为管理数据库而设计的大型电脑软件管理系统.具 ...

  9. 原生javascript-日期年,月,日联动选择

    在线例子:http://lgy.1zwq.com/dateSwitch/ 月份的判定,由于涉及到过多了判定条件,如果用if else会大大降低性能,建议用switch 语法 getDays:funct ...

  10. laravel中composer镜像服务的方式

    系统全局配置:即将配置信息添加到Composer的全局配置文件config.json中. 单个项目配置:将配置信息添加到某个项目的composer.json文件中. 例1:修改Composer的全局配 ...