Macos Bash脚本如何将字符串放入变量中?
你好,我想把一个字符串放入一个变量,我遇到了一些问题。。。 这就是我要做的,我想和变量进行比较,这就是我到目前为止所做的Macos Bash脚本如何将字符串放入变量中?,macos,bash,Macos,Bash,你好,我想把一个字符串放入一个变量,我遇到了一些问题。。。 这就是我要做的,我想和变量进行比较,这就是我到目前为止所做的 #! /bin/bash Output=$(sudo systemsetup -getnetworktimeserver) Variable="Time Server: abc.dd.jj.com" if [ "$Output" = "$Variable" ] then echo "OK" else echo "FALSE" fi 现在$Output变量
#! /bin/bash
Output=$(sudo systemsetup -getnetworktimeserver)
Variable="Time Server: abc.dd.jj.com"
if [ "$Output" = "$Variable" ]
then
echo "OK"
else
echo "FALSE"
fi
现在$Output变量得到了正确的字符串,但是$Output变量没有,它只是给了我一个错误,说“第3行:服务器::命令未找到”
如何将该字符串放入$Variable变量中,以便比较两者?Etan是对的,启用了智能引号!对不起,我以前没想到这一点,谢谢你们的帮助 那是你的真实剧本吗?因为这应该行得通。您是否有
Variable=“$(Time Server:abc.dd.jj.com)”
来代替?是的,我的实际脚本您可以仔细检查一下,因为事实并非如此。上面的剧本很有效。(我没有OSX,所以我用echo替换了该命令,但这不会改变任何事情)。您可以单独向我们显示systemsetup调用的输出吗?您是否有Variable=Time服务器:abc.dd.jj.com
?或者这些引号是某种“智能引号”吗?是的,我刚刚测试过,它对我有效。Variable=“Time Server:abc.dd.jj.com”
中的引号是否可能不是简单的ASCII引号,而是某种别致的排字员(或“智能”)引号因为shell除了简单的引号外,什么都不能识别。