我正在尝试循环 netstat 并按某些值 grep 结果,然后如果它们匹配,则将它们添加到文件中,但它不会执行 grep,而只是添加整个文件:
#!/bin/bash
while true
do
sudo netstat -ano -p | grep x | grep y >> netstat.txt
sleep 0.05
done
我究竟做错了什么?谢谢。
答案1
function append {
while read -r line ; do
echo "$line" >> netstat.txt
sleep 10
append
done <<< $myvar
}
myvar=$(sudo netstat -ano -p | grep x | grep y)
append
上面将返回这样的结果:
tcp 0 0 192.168.1.21:40982 13.83.65.43:443 已建立 4220/skypeforlinux keepalive (26.46/0/0) tcp 0 0 192.168.1.21:40982 13.83.65.43:443 已建立 4220 /skypeforlinux 保持活动 (26.46/0/0) tcp 0 0 192.168.1.21:40982 13.83.65.43:443 已建立 4220/skypeforlinux keepalive (26.46/0/0) tcp 0 0 192.168.1.21:40982 13.83.65.43:443 已建立 4220 /skypeforlinux 保持活动 (26.46/0/0) tcp 0 0 192.168.1.21:40982 13.83.65.43:443 已建立 4220/skypeforlinux keepalive (26.46/0/0) tcp 0 0 192.168.1.21:40982 13.83.65.43:443 已建立 4220 /skypeforlinux 保持活动 (26.46/0/0) tcp 0 0 192.168.1.21:40982 13.83.65.43:443 已建立 4220/skypeforlinux 保持活动 (26.46/0/0)