![如何复制刚刚通过命令行搜索的文件?](https://linux22.com/image/822039/%E5%A6%82%E4%BD%95%E5%A4%8D%E5%88%B6%E5%88%9A%E5%88%9A%E9%80%9A%E8%BF%87%E5%91%BD%E4%BB%A4%E8%A1%8C%E6%90%9C%E7%B4%A2%E7%9A%84%E6%96%87%E4%BB%B6%EF%BC%9F.png)
使用 Ubuntu 12.04 时,我需要帮助复制通过搜索返回的文件grep
。
我有很多 pdf 文件,因此为了过滤特定命名的文件,我使用通用 grep 命令,如下所示。
raja@badfox:~/Desktop/mtech/M.Tech II Sem-April 2012$ grep "DESIGN OF FAULT TOLERANT SYSTEMS" *.pdf
Binary file NR-DESIGN OF FAULT TOLERANT SYSTEMS.pdf matches
Binary file R09-DESIGN OF FAULT TOLERANT SYSTEMS.pdf matches
如何自动将搜索返回的文件复制到另一个目录?
答案1
一个更简单的方法就是使用cp
。
cp *"DESIGN OF FAULT TOLERANT SYSTEMS"*.pdf /some/folder/
答案2
在搜索文件时,另一种常见的方法是结合使用以下命令find
,例如
find -name "*DESIGN OF FAULT TOLERANT SYSTEMS*.pdf" -exec cp '{}' /some/folder/ \;
它将搜索和复制(通常是您想要对文件执行的任何操作)组合成一个命令。
如果您想将搜索限制在当前目录,您可以将选项添加-maxdepth 1
到 find 命令。
find
有许多选项可以指定要搜索或不搜索的路径,包括检查修改时间、路径说明符、文件名等等。如果使用得当,它是一个非常强大的工具。