2012-08-10 228 views
0

我需要找到一个目录的形式“abc.111”的文件,并将其重命名为我的shell脚本“abc.222”。某种程度上,模式替换失败。我在这里错过了什么?重命名文件

#!/bin/sh 

find . -name \*abc\* | while read FILES 
do 
     newfile = ${FILES/111/222} #Replace 111 by 222 
     mv $FILES $newfile 
done 

错误:/temp.sh:坏替代

回答

2

/bin/sh不支持${var//}替代。尝试另一个shell,例如/bin/bash

修复该问题后,您会发现空格不起作用。

newfile = ${FILES/111/222} 

您必须在=的任一侧写入此行而不留空格。

+0

太好了,现在就开始工作,谢谢! – user379151 2012-08-10 22:00:50