Answers:
这听起来像brew应用程序打印的警告,但bash不知道错误。bash是否将其视为错误取决于应用程序是将其发送到错误流还是输出流,以及退出代码是什么。由于从脚本返回OK,bash认为命令返回0,这意味着bash命令成功运行。因此,brew必须向stdout发送此类型的警告,而不是stderr。
您是否了解如何使用2>将stderr重定向到文件?您可以在运行脚本时将stderr(2)和stdout重定向到两个不同的文件。然后,您可以看到警告打印到哪个流。
./script.sh > stdout.txt 2> stderr.txt
bash -version
在Mac OS X 10.9.5上从命令行查看,我会得到返回版本的3.2.53
。这似乎与3.5.2
你的警告线有关。