gpt4 book ai didi

linux - 将所有以 X 结尾的文件名更改为 Y

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:10:15 26 4
gpt4 key购买 nike

我正在构建一个带有 3 个参数的脚本:文件夹、X、Y。该脚本会将所有以 X 结尾的文件重命名为相同的名称,但以 Y 结尾。我不想进入子目录。

我试过:重命名

#!/bin/bash

for file in {"$1"}*.{"$2"}; do
mv -- "$file" "${f%.}.{"$2"}"
done

所以当我运行的时候

Rrename thisFolder cpp c

它将所有以.cpp结尾的文件重命名为与thisFolder中的.c同名

我哪里出错了?

最佳答案

对您的尝试进行一些修改:

#!/bin/bash

for file in "$1"/*."$2"; do
mv -n "$file" "${file%.*}.$3"
done

我删除了一些 {},因为它们使用不当。唯一需要它们的地方是在循环内,使您能够从文件名中删除后缀。此外,您没有在脚本中使用第三个参数。

-n 切换到 mv 可防止现有文件被覆盖。

关于linux - 将所有以 X 结尾的文件名更改为 Y,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27753877/

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