簡體   English   中英

Bash解析路由命令中的輸出

[英]Bash parse output in route command

我正在編寫bash腳本以在無線網絡中注冊遠程主機。 我正在獲取遠程IP,但是我需要幫助來解析輸出。 這是我的輸出:

$ IPS=`route -n | grep -e '10.0.0' | awk '{ print $1 }'`
$ echo $IPS
10.0.0.2
10.0.0.3

我需要獲取這些IP並插入諸如... <remote_ip_1> ...類的命令中

如何做呢? 我在答案中找不到這種情況。

謝謝

您可以使用類似

route -n | awk '/10.0.0/ { system("command to be executed with "$1) }'
                                                                  ^
                                                             added missing )

我們正在否定使用grep並使用//搜索所需的文本,然后使用awk系統函數與$ 1一起執行命令

請嘗試以下操作:

route -n | grep -e '10.0.0' | awk '{ print $1 }' | xargs -L 1 your_command

例如,嘗試以下操作:

route -n | grep -e '10.0.0' | awk '{ print $1 }' | xargs -L 1 echo "===>"

參數-L 1告訴xargs每個IP運行一個命令。 有關更多詳細信息,請參見man xargs

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM