繁体   English   中英

操作系统检测中的语法问题

[英]Syntax issues in OS detection

我正在使用bash编写脚本,以确定正在使用的os并将版本打印到屏幕上。

给我问题的唯一电话是这条电话,您能帮我吗?:

替代方法是使用

lsb_release -d 

用于获取分发名称,或

lsb_release -a

获取有关发行版的所有信息。

有关此linux标准基本实用程序的更多信息。

=符号的两侧之间不能有空格,并且需要将右侧作为子命令执行(使用$()语法)。

current_os=$(cat /etc/*-release | grep CentOS)

如果使用current_os = ...这样的空格current_os = ... bash会在您尝试运行名为current_os的命令时对其进行解释。

source /etc/os-release
current_os=$PRETTY_NAME

或者如果您不想将所有东西都拉进去

current_os=$(source /etc/os-release && echo $PRETTY_NAME)

将命令放在反引号(``)中,该语句将分配命令的输出。

current_os=`cat /etc/*-release | grep CentOS`

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM