当前位置:  技术问答>linux和unix

rm与grep联合使用的问题

    来源: 互联网  发布时间:2017-05-04

    本文导语:  大家好,操作系统是Ubuntu,当前目录下有a.mp  sample1.aux  sample.aux这三个文件,现在我想把不是以.mp结尾的文件删除,先执行以下命令 ls -1 | grep -v  .*\.mp 返回了不是以.mp结尾的文件名,显示如下 sample1.aux sample.aux 前面再...

大家好,操作系统是Ubuntu,当前目录下有a.mp  sample1.aux  sample.aux这三个文件,现在我想把不是以.mp结尾的文件删除,先执行以下命令
ls -1 | grep -v  .*\.mp
返回了不是以.mp结尾的文件名,显示如下
sample1.aux
sample.aux
前面再加上删除命令
rm `ls -1 | grep -v  .*\.mp`
它不能删除文件sample1.aux  sample.aux,而是直接报"rm: 缺少操作数"的错误.这个问题困扰我好几天了,因为我已经多次这样删除文件了.哪位朋友给我指导下,万分感谢.

|
用find吧

find . -name "*.mp" | xargs rm -f


没有测试,应该没有问题。

|
你的方式有点问题

grep后  | xargs rm吧

|


find . -name "*.mp" | xargs rm -rf 

|

find . -type f -name "*.aux" | rm -f 
or
ls -1 | grep -v  .*\.mp | rm -f 

|
1、ls命令的-1选项是多余的,改成:
ls | grep -v .*\.mp

2、grep命令里面的.*\.mp这种写法是不严谨的,继续改:
ls | grep -v ".mp$"

3、传递给xargs命令进行删除:
ls | grep -v ".mp$" | xargs rm -f

4、考虑到文件名可能包含空格:
ls | grep -v ".mp$" | xargs -0 rm -f

5、没有必要的情况下,尽量不要使用rm命令的-r选项,比如3楼的写法是非常危险的。

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 关于 ps | grep 的问题
  • grep输出的相关问题
  • grep 搜索条件与的问题
  • 求助!!!! GREP 、FIND问题 (在线等)
  • grep -i忽略大小写的问题
  • find 和 grep 正则表达式的问题
  • grep 的问题
  • grep选项问题
  • 一个find的grep的问题
  • 求助一个GREP查找问题
  • 求教一个grep问题
  • grep的问题,解决之后马上给分!
  • grep 在shell中的问题
  • grep 简单问题 急!!!
  • 弱弱地问个grep的小问题
  • grep 后向引用问题
  • grep的正则表达式问题
  • 有关 grep命令 之 函数查找时 屏蔽link的问题
  • grep的问题
  • grep 搜索匹配空串的问题
  • linux bash shell命令:文本搜索工具grep中用于egrep和 grep -E的元字符扩展集
  • if ! ps -ef|grep cp|grep zw|grep -v grep|read nouse 啥意思?
  • linux bash shell命令:grep文本搜索工具简介
  • 在linux下ps -auxw | grep resin | grep -v grep| awk '{print $2}'|-exec kill -9 {} ;
  • linux下grep命令实现查找多个关键字(与关系和或关系)
  • 在linux/unix中如何用Runtime.getRuntime.exec()执行ps -ef | grep SSS | grep -v grep | awk '{print $2}'
  • linux bash shell命令:文本搜索工具Grep命令选项及实例
  • 在文件中用grep找出某些行,如果同时满足包含好几个字符串是用多次grep吗
  • linux bash shell命令:文本搜索工具grep正则表达式元字符集(基本集)
  • 'grep ^[A-D]' 和 'grep ^[ABCD]' ,结果是一样的吗?
  • 下面是用到的地方,请各位大侠多指教。 cat ../log/run_${DAYTIME}*|grep $Day| grep "resp,1062,"|./st


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,