উত্তর:
আপনার পছন্দ মতো যে কোনও ফরমেটে sort
আউটপুট পুনর্গঠিত করতে আপনি ব্যবহার netstat
করতে পারেন।
$ netstat -anpt 2>&1 | tail -n +5 | sort -k7,7 -k 6,6
এটি প্রথমে 7th ম কলামটি (প্রক্রিয়া নাম / পিআইডি) ব্যবহার করে আউটপুটটি সাজিয়ে রাখবে এরপরে রাষ্ট্র (ESTABLISHED, তালিকা, ইত্যাদি)।
দ্রষ্টব্য: কমান্ডের প্রথম অংশটি, netstat -anpt 2>&1 | tail -n +5 ..
STDOUT এ ঘটতে পারে এমন সমস্ত আউটপুটকে STDIN তেও পরিচালনা করবে এবং তারপরে প্রথম 5 টি লাইন কেটে ফেলবে যা বয়লারপ্লেট আউটপুট netstat
যা থেকে আমরা আগ্রহী নই।
$ netstat -anpt 2>&1 | tail -n +5 | sort -k7,7 -k 6,6
tcp 0 0 192.168.1.20:49309 192.168.1.103:631 ESTABLISHED 2077/gnome-settings
tcp 0 0 192.168.1.20:38393 204.62.14.135:443 ESTABLISHED 2260/mono
tcp 0 0 192.168.1.20:39738 74.125.192.125:5222 ESTABLISHED 2264/pidgin
tcp 0 0 192.168.1.20:40097 87.117.201.130:6667 ESTABLISHED 2264/pidgin
tcp 0 0 192.168.1.20:53920 217.168.150.38:6667 ESTABLISHED 2264/pidgin
...
tcp 1 0 192.168.1.20:50135 190.93.247.58:80 CLOSE_WAIT 24714/google-chrome
tcp 1 0 192.168.1.20:44420 192.168.1.103:631 CLOSE_WAIT 24714/google-chrome
tcp 0 0 192.168.1.20:36892 74.125.201.188:5228 ESTABLISHED 24714/google-chrome
tcp 0 0 192.168.1.20:43778 74.125.192.125:5222 ESTABLISHED 24714/google-chrome
tcp 0 0 192.168.1.20:33749 198.252.206.140:80 ESTABLISHED 24714/google-chrome
...
আপনি যেমন বিভিন্ন সরঞ্জাম ব্যবহার গন্য পেতে একটি অনুরূপ পদ্ধতির ব্যবহার করতে পারেন wc
বা uniq -c
।
আপনি যদি সত্যিই এর মতো দেখতে আউটপুট netstat
পেতে চান:
102 squid ESTABLISHED
32 httpd ESTABLISHED
আপনি awk
& ব্যবহার করে আরও কিছু স্লাইসিং এবং ডাইসিং করতে পারেন sed
। এটি আরও কমপ্যাক্ট তৈরি করা যেতে পারে তবে আপনার শুরু করা উচিত এবং কাজটি করা উচিত।
$ netstat -anpt 2>&1 | tail -n +5 | awk '{print $7,$6}' | sort -k1,1 -k3,3 \
| sed 's#/# #' | column -t
2264 pidgin ESTABLISHED
2264 pidgin ESTABLISHED
24714 google-chrome CLOSE_WAIT
24714 google-chrome CLOSE_WAIT
24714 google-chrome ESTABLISHED
24714 google-chrome ESTABLISHED
...
24714 google-chrome ESTABLISHED
26358 ssh ESTABLISHED
26358 ssh ESTABLISHED
26358 ssh ESTABLISHED
26358 ssh LISTEN
26358 ssh LISTEN
26358 ssh LISTEN
দ্রষ্টব্য: column -t
সহজ কলামগুলিতে সমস্ত আউটপুট প্রান্তিককরণ।
অবশেষে সংঘটনগুলির শর্তাবলী হিসাবে আপনি যা চান তা করতে:
$ netstat -anpt 2>&1 | tail -n +5 | awk '{print $7,$6}' | sort -k1,1 -k3,3 \
| sed 's#/# #' | column -t | uniq -c
6 - LISTEN
8 - TIME_WAIT
1 2077 gnome-settings ESTABLISHED
1 2260 mono ESTABLISHED
10 2264 pidgin ESTABLISHED
2 24714 google-chrome CLOSE_WAIT
27 24714 google-chrome ESTABLISHED
3 26358 ssh ESTABLISHED
4 26358 ssh LISTEN
1 26359 ssh ESTABLISHED
4 3042 thunderbird ESTABLISHED
1 32472 monodevelop ESTABLISHED
2 32472 monodevelop LISTEN
1 32533 mono ESTABLISHED
1 32533 mono LISTEN
1 3284 monodevelop LISTEN
1 3365 mono LISTEN
1 4528 mono LISTEN
1 8416 dropbox ESTABLISHED
1 8416 dropbox LISTEN
প্রথম কলামটি গণনা উপস্থাপন করে।
উইকিপিডিয়া থেকে
লিনাক্সে,
netstat
("নেট-সরঞ্জামগুলির" অংশ) অবমূল্যায়ন করা হয়েছে , পরিবর্তেss
(আইপ্রেট 2 এর অংশ) ব্যবহার করা উচিত।
নেট-সরঞ্জাম প্যাকেজ বেশি দশকে একটি Linux রিলিজ আর দেখেনি। চিরকালীন বিকাশমান কার্নেলের যোগাযোগ ইন্টারফেসগুলি পরিচালনা ও নিরীক্ষণের জন্য ডিজাইন করা একটি প্রোগ্রাম স্যুটটির আপডেট ছাড়াই দীর্ঘ সময় যাচ্ছিল - বিশেষত যখন আপনি ব্যবহারিকভাবে ইন্টারনেট চালিত কার্নেলের কথা বলছেন।
ধন্যবাদ যদিও, সক্রিয়ভাবে রক্ষণাবেক্ষণ করা iproute2 প্যাকেজ রয়েছে - এতে ss
ইউটিলিটি অন্তর্ভুক্ত রয়েছে ।
সঙ্গে ss
আপনি জিনিস তোমার মত জন্য অনুরোধ করতে পারেন:
ss -np state ESTABLISHED
থেকে man ss
:
#USAGE EXAMPLES
ss -t -a
# Display all TCP sockets.
#
ss -t -a -Z
# Display all TCP sockets with process SELinux
# security contexts.
#
ss -u -a
# Display all UDP sockets.
#
ss -o state established '( dport = :ssh or sport = :ssh )'
# Display all established ssh connections.
#
ss -x src /tmp/.X11-unix/*
# Find all local processes connected to X server.
#
ss -o state fin-wait-1 '( sport = :http or sport = :https )' dst 193.233.7/24
# List all the tcp sockets in state FIN-WAIT-1
# for our apache to network 193.233.7/24 and
# look at their timers.