[英]Combining two bash commands
如果找到此代碼
host raspberrypi | grep 'address' | cut -d' ' -f4
給出pi IP地址
和這個
wget --post-data="PiIP=1.2.3.4" http://dweet.io/dweet/for/cycy42
發送1.2.3.4到dweet.io流
我怎樣才能從1st得到輸出,以取代1st中的1.2.3.4?
將第一個命令的輸出保存在變量中:
ip=$(host raspberrypi | grep 'address' | cut -d' ' -f4)
wget --post-data="PiIP=$ip" http://dweet.io/dweet/for/cycy42
順便說一句,如果您的raspberrypi正在運行raspbian,那么獲取IP地址的一種更簡潔的方法:
hostname -I
將命令簡化為:
ip=$(hostname -I)
wget --post-data="PiIP=$ip" http://dweet.io/dweet/for/cycy42
使之成為一線:
wget --post-data="PiIP=$(hostname -I)" http://dweet.io/dweet/for/cycy42
UPDATE
看來hostname -I
為您提供了一些不同的輸出。 然后可以使用它:
ip=$(hostname -I | awk '{print $1}')
要使其成為單線,可以像在前面的示例中一樣將其插入第二行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.