我的文件名如下:Rv0012_gyrB.txt、Rv0001_Rv.txt 如何通过保留文件名的前 6 个字符并删除其余字符来重命名文件? 我想要的输出应该是: Rv0012.txt 和 Rv0001.txt 请让我知道如何在 Linux 中使用脚本处理多个文件。
最佳答案
for file in *; do
filename=${file%_*}
fileext=${file##*.}
if [ "$fileext" = "$file" ]; then
mv "$file $filename"
else
mv "$file $filename.$fileext"
fi
done
假设您想在第一次出现下划线时分隔,这应该可以做到。
关于linux - 如何通过保留文件名的前 6 个字符并删除其余字符来重命名文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43061468/