假设我在文件夹 X 中有 100 个文本文件。其中 30-40 个文本文件包含单词“饼干“。
我想将所有这些文本文件复制到包含单词“饼干“ 在里面。
哪种使用 cli 执行此操作快速且有效?
答案1
类似这样的事情会起作用:
grep -l 'Cookies' /Path/to/X/*.txt | xargs -I files mv files /Path/to/Y/
grep -l 'Cookies' /Path/to/X/*.txt
:- 将查找所有
*.txt
包含的文件Cookies
,将其更改*
为任何文件。 -l
表示仅打印文件名。
- 将查找所有
xargs -I files mv files /Path/to/Y/
- 将会把它们移动到你想要的路径。
或者xargs
我们也可以改用循环:
grep -l 'Cookies' /Path/to/X/*.txt | while read i; do mv "$i" /path/to/x/; done