Bash 检测mac上是否安装了coreutils
如果不使用,我如何检测coreutils是否安装在运行bash脚本的mac上 这是我的剧本:Bash 检测mac上是否安装了coreutils,bash,macos,gnu-coreutils,Bash,Macos,Gnu Coreutils,如果不使用,我如何检测coreutils是否安装在运行bash脚本的mac上 这是我的剧本: #!/usr/bin/env bash check_bash_version () { echo "checking which bash version is installed...." sleep 3 echo "Bash versioncheck completed" sleep 1 if [[ "${BASH_VERSINFO[0]}" -lt 4 ]]; then
#!/usr/bin/env bash
check_bash_version () {
echo "checking which bash version is installed...."
sleep 3
echo "Bash versioncheck completed"
sleep 1
if [[ "${BASH_VERSINFO[0]}" -lt 4 ]]; then
echo "You need to be using Bash version =< 4. Please upgrade"
exit 1
fi
}
check_coreutils () {
echo "checking if coreutils is installed...."
sleep 3
# what goes here
}
main() {
# Main function.
# check if MacOS
if [[ "$(uname)" == "Darwin" ]]; then
check_bash_version
check_coreutils
fi
}
#/usr/bin/env bash
检查\u bash\u版本(){
echo“检查安装了哪个bash版本…”
睡眠3
回显“Bash版本检查已完成”
睡眠1
如果[[“${BASH_VERSINFO[0]}”-lt 4]];则
echo“您需要使用Bash版本=<4。请升级”
出口1
fi
}
检查\u coreutils(){
echo“检查是否安装了coreutils…”
睡眠3
#这里有什么
}
main(){
#主要功能。
#检查是否有MacOS
如果[[“$(uname)”=“Darwin”];则
检查\u bash\u版本
查核
fi
}
通常GNU工具的存在是通过使用工具的--version
输出来完成的,并检查其中是否有字符串GNU
。通常GNU工具的存在是通过使用工具的--version
输出来完成的,并检查其中是否有字符串GNU
。1。从coreutils中选择一个工具。2.输出<代码>--此工具的版本。3.检查输出是否包含字符串GNU。谢谢@KamilCuk。如果你把你的评论作为回答,那么我可以接受。您的错误消息应该是,您需要使用bash版本>=4
.1。从coreutils中选择一个工具。2.输出<代码>--此工具的版本。3.检查输出是否包含字符串GNU。谢谢@KamilCuk。如果你把你的评论作为回答,那么我可以接受。您的错误消息应该是您需要使用bash version>=4
。只有当您实际使用GNU版本替换mac的旧BSD版本的coreutils时,这才有效。如果您通过自制安装GNU coreutils,它们不会取代它们,而是安装在brew文件夹的一侧,并以前缀为g
的二进制名称进行调用,因此,例如gcomm
只需comm
。因此,如果例如comm--version
没有返回GNU字符串,您还应该检查gcomm--version
。只有当您实际使用GNU字符串替换mac的旧BSD版本的coreutils时,这才有效。如果您通过自制安装GNU coreutils,它们不会取代它们,而是安装在brew文件夹的一侧,并以前缀为g
的二进制名称进行调用,因此,例如gcomm
只需comm
。因此,如果例如comm--version
没有返回GNU字符串,您还应该检查gcomm--version
。