重命名 Linux 中文件的循环



我正在尝试创建一个通过目录的 for 循环,并重命名该目录中的每个文件。

dir2=$1
for i in $dir2
do
file=$(basename "$i")
b=${file%.*}
c=${file#"$stub"}
d=-BACKUP
e=$b$d$c
mv "$i" "$e"

我正在尝试更改每个文件:i以成为$e。

例如,如果我有一个目录,并且其中有一个名为test.txt的文件,则该文件将更改为test-BACKUP

.txt

我遇到了问题,因为它没有更改目录中的文件,而是更改了目录本身。

for i in "$dir2/"*; do
    mv "$i" "${i%.*}-BACKUP.${i##*.}"
done
for i in *
do
  echo $i
  mv $i `basename $i`.new
done

相关内容

  • 没有找到相关文章

最新更新