1
我有这个简单的bash脚本,从我开发服务器获取副本:bash脚本停止脚本的执行中没有任何错误
#!/bin/sh
DATE=`date +%Y-%m-%d_%H%M.%S`
BASEDIR="/var/www/db"
RELEASEDIR="$DATE";
RELEASEDIRFULL="$BASEDIR/releases/$RELEASEDIR"
mkdir -p "$RELEASEDIRFULL"
echo "Chdir to \"$RELEASEDIRFULL\""
cd "$RELEASEDIRFULL"
echo "Getting copy from dev"
ssh dev.example.tld "cd /tmp; cd /sites/db; tar -zcvp --exclude data --exclude scripts -f - *" | tar zxvpf -
ln -s /var/www/db/data data
ln -s /var/www/db/scripts scripts
cd $BASEDIR
rm htdocs; ln -s releases/$RELEASEDIR htdocs
最近,它停止了与没有明显的原因正常工作。它到达ssh行,执行正常(文件出现在实时服务器上),但不会继续执行ln命令。如果我将ssh行注释掉,行将被正确执行。
更新:我注意到,当我以www数据登录并启动脚本时,它按预期完成,没有错误。
“如果我评论ssh行,”...? – Cam 2011-01-21 16:59:33
修复了缺失的结局。 – Henno 2011-01-21 17:00:50