shell 脚本中的 ifconfig -a

shell 脚本中的 ifconfig -a

我正在编写一个 shell 脚本来在启动时在虚拟机中启动网络,因为由于某种原因它不会立即使用虚拟机的快照来执行此操作。

由于eth设备启动时处于关闭状态,因此我必须使用以下脚本获取该设备名称,然后启动设备:

gateway=ifconfig -a | awk '/eth/ {print $1}'
dhclient $gateway

但是我不断收到以下错误line 1: -a: command not foundifconfig -a但是可以从命令行运行。

有没有办法ifconfig -a在我的 shell 脚本中工作?

答案1

你必须使用命令替换,否则,bash会认为您将ifconfig结果分配给变量gateway然后运行命令-a

gateway=$(ifconfig -a | awk '/eth/ {print $1}')
dhclient $gateway

相关内容