gpt4 book ai didi

linux - 如何使用 find 和 xargs 将文件从文件夹中的文件夹移动到另一个文件夹?

转载 作者:太空宇宙 更新时间:2023-11-04 12:21:21 24 4
gpt4 key购买 nike

我正在尝试将 filecontainer 文件夹中的文件移动到 example1 文件夹中。

目录结构为:

/example1

/example2/filecontainer

example1 中没有任何内容。

example2 有一个名为 filecontainer 的文件夹,里面有 example1.sh、example2.sh 和 example3.sh 三个文件

我尝试了下面的命令,但没有移动任何文件。

find ./ -name "example*.sh" | xargs -I% mv % example1

本质上,我想将子文件夹中的文件移动到另一个文件夹。我可以将文件从一个文件夹移动到另一个文件夹,但是当文件夹是子文件夹时,它不起作用。

我必须使用 find 和 xargs,因为稍后我将过滤从今天到一年的文件,并且只将这些文件从子文件夹移动到文件夹。

最佳答案

您根本不需要findxargs 吗?你的 shell 会很乐意为你做事:

mv -t/example1/example2/filecontainer/example.*

如果您确实有一个您确实需要找到的更复杂的方案,您可以做很多事情;其中

  • 使用find-exec选项
  • 使用find [location] [-options, such as -name] -print0 | xargs -0 mv -t {目标目录}。请注意,-print0 使 find 用零字节分隔文件名,这很好,因为其他分隔符(如空格或换行符)在文件名中绝对合法; -0 使 xargs 寻找零字节而不是换行符

顺便说一下,你的代码的问题在于你使用了非常奇怪的引号:你的不是,这会有所不同为您的计算机。

关于linux - 如何使用 find 和 xargs 将文件从文件夹中的文件夹移动到另一个文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45855358/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com