当前位置: 首页 > 面试题库 >

使用grep查找文件中的内容,如果匹配则将其移动

徐丰茂
2023-03-14
问题内容

我正在使用grep生成我需要移动的文件列表:

grep -L -r 'Subject: \[SPAM\]' .

如何将该列表传递给mv命令并将文件移动到其他位置?


问题答案:
grep -L -Z -r 'Subject: \[SPAM\]' . | xargs -0 -I{} mv {} DIR

-Z表示在文件名后输出零(\ 0)(因此,空格不用作分隔符)。

xargs -0

表示将\ 0解释为定界符。

然后

-I{} mv {} DIR

表示{}文件名替换,因此您得到mv filenames DIR



 类似资料:
  • 问题内容: 因此,对于Java中的正则表达式,我想编写一个正则表达式,当且仅当模式前面没有某些字符时才匹配。例如: 如果bar不以foo开头,我想匹配。因此输出为: 我知道这可能是一个非常简单的问题。我正在尝试学习正则表达式,但与此同时我现在需要一些工作。 问题答案: 你想这样使用: 此处的()意思是“仅在此点之前没有“ x”。 有关更多信息,请参见正则表达式-环顾四周。 编辑:添加来捕获之前的字

  • 问题内容: 我有一堆目录 ,其中有些目录的名称中包含字母。我只想获取所有具有数字名称的目录,然后将它们移至另一个目录。 我尝试这样: 匹配的部分有效,但最终将所有内容移至… 问题答案: 我不确定我是否正确理解,但至少可以提供一些帮助。 使用find和xargs的组合来操作文件列表。 使用并引用替换符号可使您的脚本更加健壮。它可以处理存在不可打印字符的大多数情况。这基本上表示它使用char分隔符而不

  • grep用于在文件内搜索,查看是否有任何行与给定的正则表达式匹配。然而,我有这种情况--我想编写一个将与文件名本身(而不是文件内容)匹配的正则表达式。我将从系统的根目录运行它,以找到所有与正则表达式匹配的文件。

  • 问题内容: 我必须编写一个脚本来查找目录中的所有可执行文件。因此,我尝试了几种实现它的方法,它们实际上起作用了。但是我想知道是否有更好的方法。 所以这是我的第一种方法: 这很好用,因为-F标志为我完成了工作,并在每个可执行文件中添加了一个星号,但可以说我不喜欢该星号。 这是第二种方法: 这也很好用,我想用破折号作为第一个字符,然后我对接下来的两个字符不感兴趣,而第四个字符必须是x。 但是需求中有些

  • 我正在使用Restasured来帮助我进行一些测试。 给定以下XML: 如何在“描述”属性中选择包含“儿童”一词的所有膳食?我需要区分大小写。 下面没有抛出异常,但它也没有找到我需要的代码属性CHML: 我猜我的Regex/grep错了?

  • 我正在尝试构建一个php国际象棋应用程序,并将其包装在容器中。起初,我使用了旧的docker配置,但它不起作用,所以我在上面添加了一些内容(比如将config apache文件复制到容器中等等)。重点是-I copy放入只包含一行代码的容器中。但是在运行容器之后,它显示第5行有错误。当我在运行之前查看文件的内容时,它显示它只包含1行,所以我感到困惑。在回购(下面的链接)中,我有这个文件。 这是我运