shell习题-取消后缀


至少用两种方法,批量把当前目录下面所有文件名后缀为.bak的后缀去掉,比如1.txt.bak去掉后为1.txt

 

参考答案:

假设取消的后缀为.bak

方法一:

for i in `ls *.bak`
do 
    mv $i `echo $i|sed 's/\.bak//g'`
done


方法二:

for i in `ls *.bak`
do 
    newname=`echo $i|awk -F '.bak' '{print $1}'` 
    mv $i $newname
done