我正在尝试获取 ls 命令的输出并在该列表中搜索正则表达式...实际上,它将在文件夹中的每个文件名中搜索正则表达式。我整理了一个简单的例子来说明我认为正确的方法,但显然不是:
$ ls ~/Desktop/testFolder | grep -rn “内容”
我知道,我可以为此编写一个脚本,将“ls”的输出通过管道传输到一个文本文件,然后 grep 该文件...但我问的是如何在没有多步骤过程或脚本的情况下执行此操作。
答案1
您的命令应该可以工作,尽管您不需要 grep 命令中的 -r 选项。当您尝试运行不符合预期的命令时会发生什么?
ls /path | grep string
以上对我有用。
您还可以尝试查看 find 命令:
find ~/Desktop/testFolder -iname '*contents*'
希望这会有所帮助并祝你好运!
答案2
您唯一的错误是设置-r
了选项grep
。
答案3
你想要:ls ~/Desktop/testFolder/*contents*