我有一个名为a_b-c-d-e-f.txt
. 我想采用当前名称并交换破折号和下划线,使其变为a-b_c_d_e_f.txt
.
我的直觉告诉我尝试rename
or tr
,但我对此有疑问。这是我目前的尝试
#!/bin/bash
for i in *.txt; do
[ -f "$i" ] || break
newFile=$(echo "$i" | tr '-' '_')
cp "$i" $newFile
done
有了这个,我最终得到
a_b_c_d_e_f.txt
不应该改变的是ab之间的那部分。此外,该破折号不一定总是在文件名中的那个位置。例如,它可能看起来像
a-b-c_d-e-f.txt
或者像这样的任何组合。我希望他们翻转不管他们在名字中的位置。