所以我对bash很新,我正在为build-essential
和OpenSSL
制作安装程序。问题是它始终在第一个exec
行之后停止。这是我的代码:
#!/bin/bash
echo "Installing build-essential"
exec sudo apt-get install build-essential > /dev/null 2>&1
echo "Finished installing build-essential"
echo ""
echo "Installing OpenSSL"
exec sudo apt-get install openssl > /dev/null 2>&1
echo "Finished installing OpenSSL"
echo ""
echo "Updates complete!"
这是输出:
Installing build-essential
[sudo] password for matthew:
请记住,我刚开始几个小时前。抱歉转储问题。
答案 0 :(得分:3)
exec
永远不会返回到调用脚本。它使用exec
之后的命令替换当前进程。只需完全删除exec
,让apt-get像任何其他命令一样运行。
注意:exec
使用做返回调用脚本,例如仅执行I / O重定向的那些。