저는 bash 스크립팅을 처음 접했고 현재 네트워크를 가져와 다운로드하는 스크립트를 만들려고 합니다. 필요한 정보를 추출하기 위해 awk 또는 sed와 같은 도구를 찾으려고 노력하고 있습니다.
고양이/proc/net/dev
Inter-| Receive | Transmit face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
lo: 2245514 26732 0 0 0 0 0 0 2245514 26732 0 0 0 0 0
0
wlan0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0
eth0: 501233000800 372656590 0 354 0 0 0 478724 19824791855 194196655 0 0 0 0 0 0
이것은 내 출력입니다. eth0에서 필드를 수신하고 전송해야 합니다. grep -i eth0을 사용하여 한 줄로만 수정하려고 시도했지만 그 후에는 멈췄습니다.
eth0: 501233200415 372657763 0 356 0 0 0 478834 19825031691 194197387 0 0 0 0 0 0
여기까지 왔습니다. "501233200415" 및 "478834"를 어떻게 추출합니까?
답변1
원하는 필드가 항상 두 번째 및 아홉 번째 필드인 경우(예에서와 같이) 다음을 사용할 수 있습니다.
grep -i eth0 your_file | awk '{print $2, $9}'