我正在尝试将filecontainer文件夹中的文件移动到example1文件夹中。
目录结构是:
/example1
/example2/filecontainer
example1中没有任何内容。
example2有一个名为filecontainer的文件夹,其中有三个文件名为example1.sh,example2.sh和example3.sh
我尝试了下面的命令,但没有移动任何文件。
find ./ -name "example*.sh" | xargs -I% mv % example1
基本上我想将子文件夹中的文件移动到另一个文件夹。我能够将文件从一个文件夹移动到另一个文件夹,但当文件夹是子文件夹时,它不起作用。
我必须使用find和xargs,因为我稍后会过滤从今天到一年的文件,只将这些文件从子文件夹移动到文件夹。
答案 0 :(得分:0)
您根本不需要find
或xargs
吗?你的shell会很乐意为你做点什么:
mv -t /example1 /example2/filecontainer/example.*
如果你确实有一个更复杂的方案,你实际上需要找到,你可以做很多事情;其中
find
' -exec
选项find [location] [-options, such as -name] -print0 | xargs -0 mv -t {target directory}
。请注意-print0
使得使用零字节将文件名分开,这很好,因为其他分隔符(如空格或换行符)在文件名中绝对合法; -0
使xargs查找零字节而不是换行符顺便提一下,您的代码问题在于您使用了非常奇怪的引号:“
不是"
,这对您有所帮助计算机。