• rm反向删除的几种方法


    关键词:rm  删除 反向

     

    参考:

    http://blog.sina.com.cn/s/blog_67e34ceb01014930.html

    http://bbs.csdn.net/topics/390077765

    http://www.douban.com/group/topic/37732676/

    http://www.myexception.cn/linux-unix/389690.html

     

    zhou@zhou:~/LinuxC/file/test$ ls
    1  23sdfwe  88888888  aabb  ag    ghdda     mmm
    2  3        aaaaaaaa  abc   asdg  llllllll  wwwww
    zhou@zhou:~/LinuxC/file/test$

    然后我想删除除了包含字符串aa外所有的文件,也就是想留下aabb,aaaaaaaa,这两个文件,其他的全部删除
    下面是我的命令:

    zhou@zhou:~/LinuxC/file/test$ rm `ls | grep -v "aa"`
    zhou@zhou:~/LinuxC/file/test$ ls
    aaaaaaaa  aabb
    zhou@zhou:~/LinuxC/file/test$
    所以了,成功了。
    简单的解释一下那条命令吧:rm 删除后面指定的文件
    `ls | grep -v "aa" ` 记得外面是反引号(反引号的位置就在标准键盘的数字1的左边)

    ls:查看当前目录下所有的文件,使用grep命令过滤一下 grep -v "aa" 就是找出字符串中不带“aa”的。

    整体再顺一下:列出文件名不带“aa”串的文件,然后删除他们。OK。
    其实说起来简单,当时我也做了好长时间,因为以前没怎么接触grep,因此一开始我想到的办法是使用正则表
    达式,但是在做的过程中突然发现了grep使个不错的东西,因此就使用了。


    上面的命令使删除带有“aa”串的文件,那如果我只想留下文件aa呢?很简单

    zhou@zhou:~/LinuxC/file/test$ rm `ls | grep -v "^aa$" `
    在aa前面加上^,后面加上$表示结束符的意思,这个就是完全匹配了。
    好了,就这么多。但愿以后能用到这个有用的命令
     

     
     
     
    如上图:我想删除除目录linuxcast和目录xuefu以外的所有其它文件或目录。。。 
     
    ls *|grep -v linuxcast|grep -v xuefu |xargs rm -rf

    或者

    $ shopt extglob 
    
    $ rm -rf !(linuxcast|xuefu) 

     


    如何反向选择文件并删除

    案例:一个文件夹下我想删除 除了abc文件 之外的所有文件,命令怎么写(linux下)

    ------解决方案--------------------

    find . -maxdepth 1 -type f -not -name 'abc' -exec rm '{}' ';' 

    ------解决方案--------------------

    ls | grep -v abc | xargs -i rm -rf {}

     


    案例:一个文件夹下我想删除 除了abc文件 之外的所有文件,命令怎么写(linux下)

    find . -maxdepth 1 -type f -not -name 'abc' -exec rm '{}' ';'

    或者

    ls | grep -v abc | xargs -i rm -rf {}

    或者

    mv abc /tmp
    rm *
    mv /tmp/abc .
  • 相关阅读:
    sqlite3.6.10的vs2005 编译错误
    .NET网络编程学习(二)
    Lucene的使用(一)
    .NET网络编程学习(三)
    深入学习Heritrix解析Frontier(链接工厂)
    .NET网络编程学习(一)
    Subversion的Windows服务配置
    深入学习Heritrix解析处理器(Processor)
    log4net的使用
    深入学习Heritrix解析CrawlController
  • 原文地址:https://www.cnblogs.com/pengdonglin137/p/3510512.html
Copyright © 2020-2023  润新知