我正在编写一个用于在heroku中部署的bash脚本,但它总是失败。
脚本命令是
while IFS='' read -r line || [ -n "$line" ]; do
set -- $line
echo "processing $4"
#Folder $1
cd $1
#Branch $2
git checkout $2
#Remote $3
git push $3 $2
#Heroku App Name $4
echo "App name $4"
heroku run rake db:migrate -a $4
echo "restarting $4"
heroku restart -a $4
cd ..
echo "DONE!"
done < "config.txt"
错误行是下一行。
heroku run rake db:migrate -a $4
heroku restart -a $4
$ 4有我的应用程序的名称。执行因内部服务器错误而失败。
但是,如果我将4美元替换为App名称,那就可以了。
我尝试使用eval
eval "heroku run rake db:migrate -a $4"
也许我做错了。
config.txt只有两行。
testapp dev heroku_dev testapp-dev
testapp master heroku_dev testapp-dev
非常感谢您的支持。
再见。
答案 0 :(得分:0)
config.txt的Unix编码错误。这个文件是在windows中构建的。我的错。