string - 从 Bash 脚本检测操作系统并通知用户

标签 string bash system uname

使用 bash,我想找到操作系统并通知用户。我试过:

OS='uname -s'
echo "$OS"
if [ "$OS" == 'Linux' ]; then
    echo "Linux"
else 
    echo "Not Linux"
fi

刚好

uname -s 
Not Linux

在终端上,这是错误的。如何将字符串正确设置为 uname 返回的内容?

谢谢

最佳答案

您可能打算使用反引号而不是单引号:

OS=`uname -s`

但你真的想要

OS=$(uname -s)

此外,您可以考虑使用 case: 而不是最终将成为 if/else 系列的 if 语句:

case $( uname -s ) in
Linux) echo Linux;;
*)     echo other;;
esac

关于string - 从 Bash 脚本检测操作系统并通知用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10736923/

相关文章:

bash - Gradle 无法识别我设置的 JAVA_HOME

iphone - 如何在iPhone SDK中监控NSSystemClockDidChangeNotification

php - SQL 语法错误 - ' ' ', '', now())'

linux - 使用 gnu-coreutils、bash 获取二进制文件的一部分

c++ - 异常错误 : Access violation reading location 0xDDDDDDDD

linux - 如何在 bash 脚本中使用 for 循环复制和重命名文件?

windows - PowerShell 重命名或删除 Thumbs.db 文件

c# - 显示器 ID 和序列号

c# - 使用 C# 在字符串前后插入用户定义的空格数

char* 会导致段错误,但 char[] 不会