linux shell 怎么将一个目录下面文件名字进行改名

如我有一个目录,下面有A,B,C,D 四个文件,我要将这四个文件名字改成 A.sh,B.sh,C.sh,D.sh
并在每个文件内容的开头加上
#!/bin/sh
ttisql xz_abmy <<!
请问这个要怎么实现呢,求大神解疑,谢谢​

#! /bin/bash
pth="/home/cnbubble/test/tt/"       #建议写局对路径
for f in `ls $pth`
do
  sed -i '1i #!/bin/sh' "$pth$f"      #使用sed在第一行前加一行
  sed -i '1a ttisql xz_abmy <<!' "$pth$f"   #在第一行后再加一行
  mv "$pth$f" "$pth${f}.sh"         #移动文件,相当于重命名
# chmod +x "$pth${f}.sh"            #加其他操作,比如更改权限
done

上的脚本会对要处理的文件夹中所有的文件进行操作,脚本放置此文件夹以外。不然要更改程序,避免操作自身

温馨提示:答案为网友推荐,仅供参考
相似回答