Bash Shell中的批重命名
我有一个完整的文件列表,比如Bash Shell中的批重命名,bash,shell,Bash,Shell,我有一个完整的文件列表,比如 1066_Hasoffers.apk.apk.txt 161_Genesys.apk.apk.txt 231_Attendance.apk.apk.txt 2956_BookingBug.apk.apk.txt 3394_sumall.apk.apk.txt 4306_Vocus.apk.apk.txt ..... 我想用一行字把它们重新命名为
1066_Hasoffers.apk.apk.txt
161_Genesys.apk.apk.txt
231_Attendance.apk.apk.txt
2956_BookingBug.apk.apk.txt
3394_sumall.apk.apk.txt
4306_Vocus.apk.apk.txt
.....
我想用一行字把它们重新命名为
1066_Hasoffers.txt
161_Genesys.txt
231_Attendance.txt
2956_BookingBug.txt
3394_sumall.txt
4306_Vocus.txt
....
如何完成此操作?可以使用重命名命令:
rename 's/apk.apk.//' *.txt
这将从文件名中删除apk.apk
也可以在bash中使用循环:
for i in *.txt; do
new=${i%apk.apk.txt}txt
mv "${i}" "${new}"
done
我不确定你在问什么。如果您想要一个命令或小脚本来重命名符合特定模式的目录中的所有文件,请这样说。否则,请把这个问题弄清楚你在找什么。如果您能描述到目前为止您尝试过的内容,这也会有所帮助。例如,如果您查看了find命令但不理解它,请这样说。非常感谢Blue Moon