当我通过bash脚本运行下面的命令时,它会失败,但是如果我复制每个回显的语句并将它们粘贴到终端中,它就可以工作了……
networksetup -listallntworkservices | while read line; do networksetup -setautoproxy '"'$line'"' http://etc...理想情况下,我只希望对名称中包含"Ethernet“或"Wi-fi”的网络服务运行上述命令。
发布于 2012-10-25 02:15:58
因为我不知道您的命令的输入是什么:尝试通过"$line"或"'$line'"更改'"'$line'"'。
为了避免shell扩展,在将参数传递给命令时,变量中包含空格时,请始终使用双引号。
如果变量中需要双引号,这应该是可行的:"\"$line\""
过滤与以太网或Wi-fi匹配的线路
networksetup -listallntworkservices |
while read line; do
if [[ $line =~ (Ethernet|Wi-fi) ]]; then
networksetup -setautoproxy "$line" http://etc.
fi
donehttps://stackoverflow.com/questions/13055068
复制相似问题