在搜索完成的文件夹中使用grep搜索创建文件

时间:2014-02-25 13:11:27

标签: bash grep

我想创建一个带有grep搜索输出的文件,但是在搜索中包含的文件夹中。如果我这样做:

grep -rnw . -e "text" > test/files.txt

它永远不会结束,因为它总是会再添加一个files.txt。完成后我怎么能这样做?

grep -rnw . -e "text" >| test/files.txt

这给出了与前一个相同的输出。 任何的想法?

2 个答案:

答案 0 :(得分:1)

使用父目录:

grep -rnw . -e "text" > ../files.txt && mv ../files.txt test/files.txt

然而,这依赖于在某些情况下可能失败的相对路径。使用静态独立路径(例如,/tmp)来避免这种情况。

答案 1 :(得分:0)

你也可以试试这个:

cat <<< "$(grep -rnw . -e "text")" > test/files.txt