rm命令可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉。对于链接文件,只是删除整个链接文件,而原有文件保持不变。

  注意:使用rm命令要格外小心。因为一旦删除了一个文件,就无法再恢复它。所以,在删除文件之前,最好再看一下文件的内容,确定是否真要删除。rm命令可以用-i选项,这个选项在使用文件扩展名字符删除多个文件时特别有用。使用这个选项,系统会要求你逐一确定是否要删除。这时,必须输入y并按Enter键,才能删除文件。如果仅按Enter键或其他字符,文件不会被删除。

语法

  rm (选项)(参数)

选项

-d:直接把欲删除的目录的硬连接数据删除成0,删除该目录;

-f:强制删除文件或目录;

-i:删除已有文件或目录之前先询问用户;

-r或-R:递归处理,将指定目录下的所有文件与子目录一并处理;

--preserve-root:不对根目录进行递归操作;

-v:显示指令的详细执行过程。

参数

  文件:指定被删除的文件列表,如果参数中含有目录,则必须加上-r或者-R选项。

常用示例

1、删除文件(默认会询问)

[root@CTU1000094955 exceltemplates]# rm OOOO.tar
rm: remove regular file ?.OOO.tar?. y
[root@CTU1000094955 exceltemplates]# ls
temp test1.xlsx test2.xlsx testfolder xxx.tar xxx.tar.bz2 xxx.tar.gz xxx.tar.Z

2、强行删除不询问

[root@CTU1000094955 exceltemplates]# rm -f test1.xlsx 
[root@CTU1000094955 exceltemplates]# ls
temp test2.xlsx testfolder xxx.tar xxx.tar.bz2 xxx.tar.gz xxx.tar.Z

3、逐一询问删除

[root@CTU1000094955 exceltemplates]# rm -i *.xlsx
rm: remove regular file ?.est2.xlsx?. y
rm: remove regular file ?.est3.xlsx?. y
[root@CTU1000094955 exceltemplates]# ls
temp testfolder xxx.tar xxx.tar.bz2 xxx.tar.gz xxx.tar.Z

4、删除目录及子目录

[root@CTU1000094955 exceltemplates]# rm -rf testfolder
[root@CTU1000094955 exceltemplates]# ls
temp xxx.tar xxx.tar.bz2 xxx.tar.gz xxx.tar.Z

5、删除以 -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]# touch ./-f
[root@localhost test]# ls ./-f
./-f[root@localhost test]# rm ./-f
rm:是否删除 一般空文件 “./-f”? y

6、自定义回收站功能

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

[root@CTU1000094955 exceltemplates]# myrm(){ D=/tmp/$(date +%Y%m%d%H%M%S); mkdir -p $D; mv "$@" $D && echo "moved to $D ok"; }
[root@CTU1000094955 exceltemplates]# alias rm='myrm'
[root@CTU1000094955 exceltemplates]# touch .log
[root@CTU1000094955 exceltemplates]# ll
total
-rw-r--r-- root root Nov : .log
-rw-r----- root root Nov : test1.xlsx
-rw-r----- root root Nov : Test_CustomerDirect.xlsx
[root@CTU1000094955 exceltemplates]# rm *
moved to /tmp/ ok
[root@CTU1000094955 exceltemplates]# ls /tmp//
.log test1.xlsx Test_CustomerDirect.xlsx

linux命令学习之:rm的更多相关文章

  1. Linux 命令学习之rm

    功能说明: rm 命令是对文件或目录进行删除操作. 语法:rm [-dfirv][--help][--version][文件或目录...] 补充说明:执行rm指令可删除文件或目录,如欲删除目录必须加上 ...

  2. 别出心裁的Linux命令学习法

    别出心裁的Linux命令学习法 操作系统操作系统为你完成所有"硬件相关.应用无关"的工作,以给你方便.效率.安全.操作系统的功能我总结为两点:管家婆和服务生: 管家婆:通过进程.虚 ...

  3. Linux命令学习

    Linux命令学习 Ubuntu常用快捷键 •Ctrl+Alt+T: 打开终端 •Ctrl+Shift+T: 新建标签页 •Tab: 终端中命令补全 •Alt+数字N: 终端中切换到第N个标签页 •↑ ...

  4. Linux命令学习总结之rmdir命令的相关资料可以参考下

    这篇文章主要介绍了Linux命令学习总结之rmdir命令的相关资料,需要的朋友可以参考下(http://www.nanke0834.com) 命令简介: rmdir命令用用来删除空目录,如果目录非空, ...

  5. Linux命令学习笔记1

    1.Linux命令学习 2.Mkdir /data       -创建文件夹 在/下创建文件夹 data 3.Cd               -目录切换 列如cd / 4.Touch /data/1 ...

  6. 《Linux命令学习手册》系列分享专栏

    <Linux命令学习手册>系列分享专栏 <Linux命令学习手册>已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/207 ...

  7. 20155229付钰涵-虚拟机安装及LINUX命令学习

    安装Ubuntu遇到的问题 问题一: 新建虚拟电脑的版本只有32-bit,与老师所给教程中的64-bit不符.为此我上百度搜寻了答案. 第一种方法: 控制面板--程序与功能--启动或关闭windows ...

  8. 安装虚拟机&Linux命令学习

    安装虚拟机&Linux命令学习 基于VirtualBox虚拟机安装Ubuntu 1.下载安装VirtualBox 根据自己电脑(32位操作系统)的实际情况,我在网上找了相应的VirtualBo ...

  9. Linux命令学习笔记目录

    Linux命令学习笔记目录 最近正在使用,linux,顺便将用到的命令整理了一下. 一. 文件目录操作命令: 0.linux命令学习笔记(0):man 命令 1.linux命令学习笔记(1):ls命令 ...

  10. 常见Linux命令学习

    Linux命令学习 命令分类: 文件处理命令 权限管理命令 文件搜索命令 帮助命令 用户管理命令 压缩解压命令 网络命令 关机重启命令 1.文件处理命令 命令格式:命令 [-选项] [参数] 例:ls ...

随机推荐

  1. javascript:控制一个元素高度始终等于浏览器高度

    window.onresize = function(){ this.opHtight()} //给浏览器添加窗口大小改变事件window.onresize = function(){ this.op ...

  2. Linux命令:ssh

    ssh介绍 ssh用法 ssh帮助 SSH() BSD General Commands Manual SSH() NAME ssh — OpenSSH SSH client (remote logi ...

  3. 【376】COMP 9021 相关笔记(二)

    Note_01 zip() itertools.zip_longest() %time Note_02 for 循环单行输出 list 技巧 迭代器 生成器 map() zip() from path ...

  4. 将 DNSCrypt 部署到 Openwrt 路由器上+ DNSmasq 解析国内域名用本地 DNS[ZT+实践]

    原文地址: 1.https://typcn.com/legacy/blog/posts/openwrt-dnscypt.html 2.http://www.openwrt.pro/post-376.h ...

  5. Ajax与select标签的组合运用

    ---------------------------------------------------------------------------------------------------- ...

  6. Java学习01 (第一遍)

    java se - 桌面 java ee - 网页 Jdk :Jre 区别Jdk-开发环境必要Jre-运行环境需要Jdk包含Jre,安装完Jdk就可以了 Javac Demo1.java-Javac ...

  7. IDEA导入jar包

    http://blog.csdn.net/a153375250/article/details/50851049

  8. vue组件知识点

    1.组件的定义 const component = { props: { //外部父组件约束子组件的 里面不要修改 可以通过触发事件来修改 active: Boolean, propOne: Stri ...

  9. hibernate 性能问题

    hibernate的目标是快速开发,数据库数据转换为java对象,业务逻辑中只使用对象进行处理. 性能开销有: 数据-对象转换时间,状态记录(是否为脏数据),sql优化(默认是对表字段全部更新,增加网 ...

  10. vue 中下拉select怎样给后台传递用户选择的物品id

    在泰康保险公众号项目中有个问题是用户选择select中的option,要把对应的id给后台以便后台工作作出相应的效果,我是这样的 <select v-model="selectcomu ...