由于巡航控制充满了浪费了我整个星期的错误,我决定我现有的 shell 脚本更简单,因此更好。
这是我到目前为止所拥有的
svn update /var/www/k12/
#svn log --revision "HEAD" /var/www/code/ | head -2 | tail -1 | awk '{print $1}' > /var/www/path/version.txt
# upload the files
rsync -ar --verbose --stats --progress --delete --exclude=*.svn /var/www/code/ example.com:/home/path
# bring database up to date
ssh example.com 'php /path/tasks/dbrefactor.php'
# notify me
ssh example.com 'php /path/tasks/build.php'
唯一的事情是前几天我更改了路径并忘记更新 rsync 调用。结果,“通知我”步骤在我解决问题时运行了好几次。
我知道在 linux 中你可以这样做command1 && command2
,如果命令 1“失败”命令 2 不会运行,但我如何观察“失败/成功”退出代码以进行调试。我自己编写的一些脚本,我确信我需要做一些特别的事情。