gpt4 book ai didi

linux - mv/重命名具有公共(public)部分但文件模式未知的文件

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

我想重命名不同文件的开头。

输入:

myfilename abc yeswithspaces.abc
myfilename def yeswithspaces.abc
myfilename_abc_nospaces.abc
myfilename def blabla.def
myfilename_abc_mainfile.ok

想要的输出:

newfilename abc yeswithspaces.abc
newfilename def yeswithspaces.abc
newfilename_abc_nospaces.abc
myfilename def blabla.def
myfilename_abc_mainfile.ok

我有这段代码可以正常工作,如果我只有一个文件 .abc 但如果有更多文件则不行:

if [ -e "${DOSSIER}/${OLD_NAME}"*.abc ];
then
for i in "${DOSSIER}/$OLD_NAME"*.abc; do
[ -f "$i" ] || continue
mv "$i" "${i/$OLD_NAME/$NEW_NAME}"
done
fi

最佳答案

例如,如果 mynamefile 的长度为 10,您可以这样写

len = ${#OLD_NAME}
for filename in $(ls | grep .abc)
do
suffix = $(filename:$len)
mv filename $newname$suffix
done

关于linux - mv/重命名具有公共(public)部分但文件模式未知的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49316225/

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