shell脚本中带有字符串的条件' if '语句,以不同的方式配置两台计算机(Ubuntu/Gnome vs Debia



我想检查.profile的当前发行版,因为我有两台计算机。我在一个系统中安装了带Gnome的Ubuntu,在另一个系统中安装了带XFCE的Debian。在这两种情况下,我都想有不同的配置,但我甚至不能让以下代码在Ubuntu中工作:


if [[ awk '{gsub(/ /, "", $1); print $1=$1}' /etc/issue == "Ubuntu" ]]; then
gsettings set org.gnome.mutter overlay-key ''
gsettings set org.gnome.shell.extensions.dash-to-dock hot-keys false
fi

我:


bash: .bashrc:223: conditional binary operator expected
bash: .bashrc:223: syntax error near `$1=$1}''
bash: .bashrc:223: `if [[ awk '{gsub(/ /, "", $1); print $1=$1}' /etc/issue == "Ubuntu" ]]; then'

但据我所知,条件是正确指定的…有任何线索吗?

我建议替换

if [[ awk '{gsub(/ /, "", $1); print $1=$1}' /etc/issue == "Ubuntu" ]]; then

source /etc/os-release
if [[ "$NAME" == "Ubuntu" ]]; then

相关内容