• linux命令学习之:rm


      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 3.log
    [root@CTU1000094955 exceltemplates]# ll
    total 88
    -rw-r--r-- 1 root root     0 Nov 29 09:47 3.log
    -rw-r----- 1 root root 43216 Nov 29 09:43 test1.xlsx
    -rw-r----- 1 root root 43216 Nov 29 09:43 Test_CustomerDirect.xlsx
    [root@CTU1000094955 exceltemplates]# rm *
    moved to /tmp/20171129094735 ok
    [root@CTU1000094955 exceltemplates]# ls /tmp/20171129094735/
    3.log  test1.xlsx  Test_CustomerDirect.xlsx
  • 相关阅读:
    利用别名切换索引流程Elasticsearch 7.7
    关于误删除elasticSearch 索引,怎么能快速找回?
    总结traefik 在k8s 环境中的配置文件
    ES ElasticSearch 7.x 下动态扩大索引的shard数量
    Java框架Spring Boot & 服务治理框架Dubbo & 应用容器引擎Docker 实现微服务发布
    谈一下Docker与Kubernetes集群的日志和日志管理-转载
    Elasticsearch优化 & filebeat配置文件优化 & logstash格式配置 & grok实践
    Nginx错误日志(error_log)配置及信息详解
    赵总的运维体系专栏学习的总结
    APP或者前端通过识别用户代理详细信息和浏览器数据进行安全防御
  • 原文地址:https://www.cnblogs.com/jing99/p/7911280.html
Copyright © 2020-2023  润新知