我可以很好地运行这个命令,并得到我想要的输出:
ifconfig eth0 | grep HWaddr | awk '{print $5}'
但是,当我将命令设置为变量并打印该变量时,出现错误:
CASS_INTERNAL=`ifconfig eth0 | grep HWaddr | awk '{print \$5}'`
$CASS_INTERNAL
my internal xxx ip: command not found
奇怪的是——我的内部IP居然出现了。我该如何处理而不出现错误?没关系,但我使用的是最新版本的 Ubuntu。
您没有打印变量,而是将其作为命令名称运行。您正在寻找
echo "$CASS_INTERNAL"
(养成总是在变量替换周围加上双引号的习惯。)
更高级的shell注释:在这种情况下并不重要,但一般来说echo
某些特殊字符可能会出现问题(-
and \\
),所以最好使用以下更复杂但完全可靠的命令:
printf "%s\n" "$CASS_INTERNAL"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)