ฉันจะแสดงเฉพาะชื่ออินเตอร์เฟสและ IP ที่กำหนดด้วย ifconfig ในเทอร์มินัลได้อย่างไร


3

มีวิธีใช้เพียงifconfigเพื่อแสดงเฉพาะชื่ออินเตอร์เฟสเครือข่ายและ IP ที่ได้รับมอบหมายหรือไม่

ฉันรู้ว่าฉันสามารถทำได้ifconfig | grep inetแต่ไม่รวมถึงชื่ออินเตอร์เฟส (en0, en1 ฯลฯ )


ifconfig เป็นโปรแกรมอรรถประโยชน์การกำหนดค่าส่วนใหญ่ netstat เป็นโปรแกรมอรรถประโยชน์ข้อมูล
Ruskes

คำตอบ:


1

Netstat vs ifconfig

Netstat -i ใกล้เคียงที่สุดที่ฉันสามารถหาสิ่งที่คุณต้องการ (มันไม่มากแล้วคุณถาม)

Name  Mtu   Network       Address            Ipkts Ierrs    Opkts Oerrs  Coll
lo0   16384 <Link#1>                          7096     0     7096     0     0
lo0   16384 localhost   ::1                   7096     -     7096     -     -
lo0   16384 127           localhost           7096     -     7096     -     -
lo0   16384 localhost   fe80:1::1             7096     -     7096     -     -
gif0* 1280  <Link#2>                             0     0        0     0     0
stf0* 1280  <Link#3>                             0     0        0     0     0
en0   1500  <Link#4>    14:10:9f:f0:29:8c   380920     0   292385     0     0
en0   1500  mynet.local fe80:4::1610:9fff   380920     -   292385     -     -
en0   1500  10.5.50/24    10.5.50.95        380920     -   292385     -     -
en3   1500  <Link#5>    32:00:1a:e9:a9:a0        0     0        0     0     0
bridg 1500  <Link#6>    16:10:9f:0f:1e:00        0     0        0     0     0
p2p0  2304  <Link#7>    06:10:9f:f0:29:8c        0     0        0     0     0

4

คุณสามารถเรียกใช้ifconfig -lเพื่อรับรายการของอินเทอร์เฟซจากนั้นทำซ้ำผ่านพวกเขา

(ทุบตี)

for i in `ifconfig -l `; do echo $i; ifconfig $i | grep "inet " ; done

สิ่งนี้จะพิมพ์ส่วนต่อประสานบนหนึ่งบรรทัดและข้อมูล "inet" ในบรรทัดถัดไป โปรดทราบว่าหากคุณค้นหา "inet" เท่านั้นบรรทัด "inet6" จะปรากฏขึ้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.