Pertanyaan iptools `ss`, tampilkan nama proses pada baris yang sama di terminal


Saya sudah terbiasa dengan output netstat -taulpen, dan meskipun saya tidak tahu apa yang semua flag lakukan secara khusus, ia memberikan tabel jaringan program yang mudah dibaca, dan ketika dijalankan sebagai sudo dapat menunjukkan semua nama proses sejajar dengan alamat dan soket yang mereka dengarkan pada dll.

Dengan ss Saya dekat dengan:

$ ss -tlnp

  -n, --numeric    don't resolve service names
  -l, --listening  display listening sockets
  -p, --processes  show process using socket
  -t, --tcp        display only TCP sockets

Seperti yang Anda bayangkan ini memberikan output seperti ini: Saya secara manual membungkus garis-garis seperti yang muncul dalam output terminal:

State      Recv-Q Send-Q                                  Local Address:Port                                    Peer Address:Port 
LISTEN     0      50                                                  *:139                                                *:*      
users:(("smbd",874,33))
LISTEN     0      5                                           127.0.1.1:53                                                 *:*      
users:(("dnsmasq",1528,5))
LISTEN     0      128                                         127.0.0.1:631                                                *:*      
users:(("cupsd",782,11))

Jadi masalah saya adalah saya memiliki banyak ruang di terminal emulator saya, tetapi ss sangat tegas membungkus beberapa kolom pertama hingga lebar 100%, dan kolom yang tersisa jatuh dan membungkus, meskipun tidak ada baris baru secara harfiah.


3
2017-10-06 17:50


asal




Jawaban:


1) Pipa melalui program yang memotong konteks lebar tty, seperti cat

$ ss -tlnp | less
$ ss -tlnp | cat
State      Recv-Q Send-Q        Local Address:Port          Peer Address:Port 
LISTEN     0      50                        *:139                      *:*      users:(("smbd",874,33))
LISTEN     0      5                 127.0.1.1:53                       *:*      users:(("dnsmasq",1528,5))
LISTEN     0      128               127.0.0.1:631                      *:*      users:(("cupsd",782,11))

2) Berbohong tentang lebar tty Anda dengan stty:

Saya tidak menganggap ini sebagai solusi karena melibatkan modifikasi lingkungan secara manual untuk mencapai efek dalam konteks program.

Tapi ini berhasil, pikir saya tidak akan pernah repot menggunakannya:

# Tell the environment this terminal is only 80 chars wide
# (or however slim you need to view the overflow)
$ stty cols 80

$ ss -tlnp
State      Recv-Q Send-Q        Local Address:Port          Peer Address:Port 
LISTEN     0      50                        *:139                      *:*      users:(("smbd",874,33))
LISTEN     0      5                 127.0.1.1:53                       *:*      users:(("dnsmasq",1528,5))
LISTEN     0      128               127.0.0.1:631                      *:*      users:(("cupsd",782,11))

3
2017-10-06 17:50



Itu cat solusi sayangnya merusak meja - alamat lokal tidak lagi sejajar dengan kiri dan semua kolom setelah tidak sejajar (secara acak bergeser ke kiri / kanan) juga :-(. Diuji pada CentOS 7 segar. - monnef