Dùng awk trong linux.



Trong linux khi muốn filter của print ra một giá trị nào đó. Thì thông thường thì ra sử dụng các câu lênh kết hợp với awk.

Ví dụ:

Bạn muốn in cột đầu tiên của tất cả các hàng (row) như sau:

ifconfig | awk '{print$1}'


manageitservice@ubuntu:~$ ifconfig | awk '{print$1}'
eth0
inet
inet6
UP
RX
TX
collisions:0
RX
lo
inet
inet6
UP
RX
TX
collisions:0
RX

Ví dụ bạn lấy ip address của tất cả các cạc mạng: 

ifconfig | awk -F"[ :]+" '/inet addr:/ {print $4}'

Bạn muốn lấy ethernet_name của một địa chỉ ip address nào đó. 

grep -B1 "inet addr:192.168.1.250" | awk '$1!="inet" && $1!="--" {print $1}'
Print out sẽ là: 


ubuntu@ubuntu:~$ ifconfig | grep -B1 "inet addr:192.168.1.250" | awk '$1!="inet" && $1!="--" {print $1}'
eth0




Nhận xét

Bài đăng phổ biến từ blog này

Trang web medium.com chết, vì sao ?

Cách sử dụng sys.argv trong python.

Thiết kế một RESTful API bằng python và flask.