0
從命令行運行ssh行時,它起作用。AWK在bash中不起作用腳本
從一個bash腳本,它顯示爲:(awk命令裏面$變量是空的)
ssh [email protected] netstat --tcp| grep 'servervip3'| grep 'ldap'| awk ' == ESTABLISHED'| awk '{print }'| awk -F: '{print }' >>/somepath/somefile.txt
腳本部分:
for ((i=0; i<${arraylength}; ++i))
do
# drop all beyond first period in SSH_ADDRESS[i] and add vip3
host_grep="`echo ${SSH_ADDRESS[i]}|awk -F. '{ print $1 }'`vip3"
ssh [email protected]${SSH_ADDRESS[i]} netstat --tcp| grep '$host_grep'| grep 'ldap'| awk '$6 == "ESTABLISHED"'| awk '{print $5}'| awk -F: '{print $1}' >>$seed_file
done
任何想法?謝謝-jim
更改'grep'$ host_grep''爲'grep'$ host_grep「' – anishsane
另外,您不應該需要一個awk&grep如此之多的管道。單個awk應該可以做到。但是,這是優化的一部分。 – anishsane
那麼'grep'和'awk'鏈接怎麼樣?這似乎相當不必要。 –