我在命令行运行一个命令,它工作正常。我已将相同的命令添加到 bash 脚本中,它会削减输出。我已经确保引用是正确的,而且我似乎看不出哪里出错了。
这是我手动运行时的命令:
./ciscocmd -u username -p password -s passwowrd -t 192.168.1.1 -c "show mac address-table address 34e6.xxxx.xxxx"
它表明
Processing... 192.168.1.1
switch#show mac address-table address 34e6.xxxx.xxxx
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
10 34e6.xxxx.xxxx DYNAMIC Gi0/2
Total Mac Addresses for this criterion: 1
这是脚本中的内容:
portis=`./ciscocmd -u username -p password -s passwowrd -t 192.168.1.1 -c "show mac address-table address 34e6.xxxx.xxxx"`
echo $portis
但它却输出了这个
[root@server]# ./test.sh
switch#ddresses for this criterion: 1--4e6.xxxx.xxxx
[root@server]#
我肯定错过了什么。我尝试过使用双“”和“”来包围 mac 地址,但它不起作用。
有什么建议么?