2
我正在创建一个bash脚本来设置开发环境。作为我的脚本的一部分,我需要安装Xcode命令行工具,并且我不希望脚本在安装完成之前继续执行。验证Xcode命令行工具安装在Bash脚本中
当我运行:
xcode-select --install
它打印,如果要安装已请求或者它已经安装。我希望能够等到消息更改为已安装。
我的剧本的相关部分如下:
check="$(xcode-\select --install)"
echo "$check"
str="xcode-select: note: install requested for command line developer tools\n"
while [[ "$check" == "$str" ]];
do
check="$(xcode-\select --install)"
sleep 1
done
不幸$check
永远是空的,因为xcode-select --install
不返回任何东西,而是相呼应的消息发送到终端。
难道输出该消息到标准错误? 'xcode-select --install 2>&1'有帮助吗? –
在_“...我的脚本的相关部分...”中,您有'check =“$(xcode- \ select --install)”',不应该是'check =“$(xcode-选择--install)“'?换句话说,'xcode-select'中的'-'和's'之间没有_backslash_。 – user3439894
没有斜杠我在我的脚本的其余部分有错误,因为'select'是bash中的保留字 –