Fas*_*oth 6 command-line find mv
我希望此命令的输出find /home -name *.pdf
将搜索结果中的文件移动到另一个目录,例如使用管道。我怎样才能做到这一点?
hee*_*ayl 15
您不需要任何管道,并将xargs文件名作为mv.
只需mv在以下-exec操作中使用find:
find /home -type f -name '*.pdf' -exec mv -t /destination {} +
Run Code Online (Sandbox Code Playgroud)
/destination为实际的目标目录find 将处理所有可能的文件名find将ARG_MAX通过一次性传递尽可能多的文件名来处理,这样就不会触发ARG_MAX-type f'*.pdf', 这样 shell 就不会像find处理它们那样事先扩展它们如果出于某种奇怪的原因,或出于学习目的,您必须使用 pipe- xargs:
find /home -type f -name '*.pdf' -print0 | xargs -0 mv -t /destination
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4369 次 |
| 最近记录: |