我正在编写一个脚本,在其中迭代文件夹并重命名文件而不更改给定路径的扩展名。我正在使用 find 获取文件的路径 - 例如
abc/xyz/qwe.txt
现在我接受用户的文件名并想重命名文件
abc/xyz/myfile.txt
有什么办法可以解决这个问题。如何重命名文件?我试过下面的代码
find "$input_variable" -type f -name $word.* | while read file; do mv $file | sed "s/$word/$replace/"; done;;
更新 试试这个
echo "Please Insert the path of the folder"
read input_variable
read -p "Enter the word to find = " word
read -p "Enter word to replace = " replace
find "$input_variable" -type f -name "$word.*" | while read file;
do
echo "$file"
s="$file"
d="`dirname $s`"
f="`basename $s`"
nf=$(echo $f | sed "s/^[^.]*\./$word./")
newFileName="$d/$nf"
done