【发布时间】:2019-04-18 23:04:05
【问题描述】:
你能否制作一个脚本(bash)来将所有以 *.512.png 结尾的文件移动到一个新文件夹,如 res512(将是新分支) (保留所有子文件夹) 对于this repo,我尝试了很长时间,但我无法弄清楚。
【问题讨论】:
-
请记住,
mv不会创建新目录,因此我假设mkdir之类的内容将是您脚本中的命令之一。我做对了吗? -
是的,忘了这个
你能否制作一个脚本(bash)来将所有以 *.512.png 结尾的文件移动到一个新文件夹,如 res512(将是新分支) (保留所有子文件夹) 对于this repo,我尝试了很长时间,但我无法弄清楚。
【问题讨论】:
mv 不会创建新目录,因此我假设 mkdir 之类的内容将是您脚本中的命令之一。我做对了吗?
你问的不是很具体。
如果要将所有后缀为 .512.png 的文件从当前目录中移动到新目录,可以使用以下命令
mkdir res512
cp -r *.512.png res512/
如果要将所有后缀为.512.png的文件从您的目录和所有子目录移动到一个新目录中,您可以使用
mkdir res512
for f in $(find -type f -name "*.512.png")
do
cp $f res512/
done
如果你想将所有后缀为.512.png的文件包括它们的目录结构移动到一个新目录中,你可以使用
find . -name '*.512.png' -exec cp --parents \{\} res512/ \;
如果您想移动文件而不是复制它们,请将
cp替换为mv。
【讨论】:
*.512.png 为后缀的文件,我不确定您希望文件结构如何影响这一点。