ubuntu脚本有区别rename和bash

在ubuntu上写法有区别
使用
#!/bin/bash代替#!/bin/sh
否则if的时候会报
unexpected operator

rename的写法也不一样
使用
rename 's/aa/haohao/;' aa
代替
rename aa haohao aa
Bareword "DemoServer" not allowed while "strict subs" in use at (eval 1) line 1.

示例代码

#!/bin/bash

if [ $# -lt 3 ]
then
echo "<Usage: $0 App Server Servant>"
exit 0
fi

APP=$1
SERVER=$2
SERVANT=$3

if [ "$SERVER" == "$SERVANT" ]
then
echo "Error!(ServerName == ServantName)"
exit -1
fi

if [ ! -d $APP/$SERVER ]
then
echo "[mkdir: $APP/$SERVER]"
mkdir -p $APP/$SERVER
fi

echo "[create server: $APP.$SERVER ...]"

make cleanall -C /usr/local/haohao/demo/

cp /usr/local/haohao/demo/* $APP/$SERVER/

cd $APP/$SERVER/

SRC_FILE="DemoServer.h DemoServer.cpp DemoServantImp.h DemoServantImp.cpp DemoServant.jce makefile"

for FILE in $SRC_FILE
do
cat $FILE | sed "s/DemoServer/$SERVER/g" > $FILE.tmp
mv $FILE.tmp $FILE

cat $FILE | sed "s/DemoApp/$APP/g" > $FILE.tmp
mv $FILE.tmp $FILE

cat $FILE | sed "s/DemoServant/$SERVANT/g" > $FILE.tmp
mv $FILE.tmp $FILE
done

#rename "DemoServer" "$SERVER" $SRC_FILE
rename "s/DemoServer/$SERVER/" $SRC_FILE
#rename "DemoServant" "$SERVANT" $SRC_FILE
rename "s/DemoServant/$SERVANT/" $SRC_FILE

cd ../../

echo "[done.]"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值