连接并作为参数传递,bash

连接并作为参数传递,bash

需要删除默认网关。例如,有一个 IP 192.168.4.15,默认网关为 192.168.4.14。我使用 gw 1​​0.0.0.1 连接到 WLAN,之后我想删除以前的 gw。

  IFS='.' read -ra IPARR <<< "$IP"
  Gateway="${IPARR[0]}.${IPARR[1]}.${IPARR[2]}.14"
  ssh blah@$IP '/sbin/route -v del default gw $Gateway;'
  #ssh blah@$IP '/sbin/ip route delete $Gateway dev rndis0;'
  #ssh blah@$IP '/sbin/route -n'

两种方法都行不通。但是,如果我通过 ssh 进入机器,则可以将其删除。我的猜测是传递 $Gateway 变量有问题。有什么建议么?

答案1

因此,答案是在 ssh 进入机器时使用双引号:

ssh blah@$IP "/sbin/route -v del default gw $Gateway;"

相关内容