gpt4 book ai didi

linux - 将具有唯一名称的多个文件移动到新文件夹并附加到文件名

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:52:07 25 4
gpt4 key购买 nike

我在一个文件夹中有大约 2000 个文件。

所有文件的名称中都包含字符串test

我需要做的是将所有这些文件 ~1250 移动到同一目录中名为 trash 的文件夹,并将 _scrap 附加到每个文件的末尾。

 mv *test* trash/

我想要的是这样的:

[root@server] ls
test1.txt test2.txt test3.txt trash video1.txt video2.txt video3.txt
[root@server] mv *test* trash/*_scrap
[root@server] ls
trash vidoe1.txt video2.txt video3.txt
[root@server] ls trash/
test1.txt_scrap test2.txt_scrap test3.txt_scrap

我可以移动所有文件,但是我不知道如何将 _scrap 附加到末尾。

因为我必须在多台机器上执行此操作,所以一个衬里比一个小脚本更可取。

最佳答案

$ touch test1.txt  test2.txt  test3.txt vidoe1.txt  vidoe2.txt  vidoe3.txt
$ mkdir trash
$ for file in *test*; do mv "$file" "trash/${file}_scrap"; done
$ ls
trash vidoe1.txt vidoe2.txt vidoe3.txt
$ ls trash
test1.txt_scrap test2.txt_scrap test3.txt_scrap
$

你也可以使用xargs

$ ls *test* | xargs -t -I{} mv {} trash/{}_scrap
mv test1.txt trash/test1.txt_scrap
mv test2.txt trash/test2.txt_scrap
mv test3.txt trash/test3.txt_scrap
$

你可以使用find

$ find . -name '*test*' -maxdepth 1 -exec mv {} trash/{}_scrap \;

关于linux - 将具有唯一名称的多个文件移动到新文件夹并附加到文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26793346/

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