আমি একই সাথে একাধিক আইপি ঠিকানা কীভাবে পিং করতে পারি?


22

আমি যে পদ্ধতিগুলি সম্পর্কে আপনি বাশ forলুপ এবং pingএকাধিক সার্ভার চালাতে পারবেন সে সম্পর্কে আমি অবগত রয়েছি , সেখানে কি একটি লিনাক্স সিএলআই সরঞ্জাম ব্যবহার করতে পারে যা pingসার্ভারের তালিকায় বাশ স্ক্রিপ্ট না লিখেই আমাকে এটি করার অনুমতি দেবে? একবারে একটি?

এটার মতো কিছু:

$ ping host1 host2 host3

দ্রষ্টব্য: আমি বিশেষত সেন্টোস / ফেডোরার সন্ধান করছি, তবে এটি যদি অন্য ডিস্ট্রোজে কাজ করে তবে তাও ঠিক।


8
আপনি কেন একটু ওয়ান-লাইনার স্ক্রিপ্টের বিরুদ্ধেই আছেন - লিনাক্সের সৌন্দর্য এবং দর্শন ;-)? (ছোট, সাধারণ প্রোগ্রামগুলি রাখুন এবং নিজের বিশেষ প্রয়োজনের জন্য আঠালো লিখুন))
পিটার - মনিকা

1
কোনও রেপো থেকে বনাম কোনও প্যাকেজ ইনস্টল করা খুব সহজ vs 2000+ ভিএম 8- তে কোনও স্ক্রিপ্ট অনুলিপি করা)। আমি সহজেই নিজের জন্য একটি স্ক্রিপ্ট সমাধান লিখতে পারি। এছাড়াও আমি নিজে থেকে উত্তর দিয়েছি যেহেতু আমি ইন্টারনেটে বিষয়বস্তু তৈরি করছি যেহেতু আমার কাছে এমন ব্যবহারকারীরা আছেন যাঁরা একটি সিএমডি বনাম একটি শেল স্ক্রিপ্টের জন্য জিজ্ঞাসা করছেন এবং তারা একটি বেসিক কি হিসাবে হিসাবে বুঝতে পারে তার জন্য একটি সাধারণ A'er খুঁজে পেতে ব্যর্থ হন were
slm

3
যদি আপনার উদ্দেশ্যটি 2000+ ভিএম থেকে কোনও মাল্টি-পিং করা হয়, ... আমি এখনও কেবল আমার মাথাটি স্ক্র্যাচ করতে পারি
হ্যাগেন ফন ইটজেন

@ হ্যাগেভনএইটজেন - না, আমি 2000+ ভিএম-তে টুলিং ইনস্টল করছি যাতে ব্যবহারকারীরা তাদের কাছে এটি করার জন্য সরঞ্জামাদি উপলব্ধ করতে পারে।
slm

1
আপনি এই প্রয়োজন হবে কেন?
Tvde1

উত্তর:


32

আপনি যদি এনএমএএপি প্রকল্পটি দেখেন তবে আপনি দেখতে পাবেন এটিতে কেবলমাত্র শীর্ষে অতিরিক্ত সরঞ্জাম অন্তর্ভুক্ত রয়েছে nmap। এই সরঞ্জামগুলির মধ্যে একটি হ'ল nping, যার মধ্যে নিম্নলিখিত ক্ষমতা রয়েছে:

এনপিংয়ের একটি খুব নমনীয় এবং শক্তিশালী কমান্ড-লাইন ইন্টারফেস রয়েছে যা ব্যবহারকারীদের উত্পন্ন প্যাকেটের উপর সম্পূর্ণ নিয়ন্ত্রণ দেয়। এনপিং এর বৈশিষ্ট্যগুলির মধ্যে রয়েছে:

  • কাস্টম টিসিপি, ইউডিপি, আইসিএমপি এবং এআরপি প্যাকেট উত্পাদন।
  • একাধিক লক্ষ্য হোস্ট স্পেসিফিকেশন জন্য সমর্থন।
  • একাধিক টার্গেট পোর্ট স্পেসিফিকেশন জন্য সমর্থন।
  • ...

nping বুট করার জন্য স্ট্যান্ডার্ড ইপিল রেপোতে রয়েছে।

$ repoquery -qlf nmap.x86_64 | grep nping
/usr/bin/nping
/usr/share/man/man1/nping.1.gz

ব্যবহার

একাধিক সার্ভারগুলিকে পিং করতে আপনাকে কেবল npingনাম / আইপি এবং কোন প্রোটোকলটি ব্যবহার করতে চান তা জানাতে হবে। এখানে যেহেতু আমরা pingmতিহ্যবাহী সিএলআই যা করি তা আমরা নকল করতে চাই আমরা আইসিএমপি ব্যবহার করব।

$ sudo nping -c 2 --icmp scanme.nmap.org google.com

Starting Nping 0.7.70 ( https://nmap.org/nping ) at 2019-06-14 13:43 EDT
SENT (0.0088s) ICMP [10.3.144.95 > 45.33.32.156 Echo request (type=8/code=0) id=42074 seq=1] IP [ttl=64 id=57921 iplen=28 ]
RCVD (0.0950s) ICMP [45.33.32.156 > 10.3.144.95 Echo reply (type=0/code=0) id=42074 seq=1] IP [ttl=46 id=24195 iplen=28 ]
SENT (1.0091s) ICMP [10.3.144.95 > 45.33.32.156 Echo request (type=8/code=0) id=42074 seq=2] IP [ttl=64 id=57921 iplen=28 ]
SENT (2.0105s) ICMP [10.3.144.95 > 45.33.32.156 Echo request (type=8/code=0) id=42074 seq=2] IP [ttl=64 id=57921 iplen=28 ]
RCVD (2.0107s) ICMP [45.33.32.156 > 10.3.144.95 Echo reply (type=0/code=0) id=42074 seq=2] IP [ttl=46 id=24465 iplen=28 ]
SENT (3.0138s) ICMP [10.3.144.95 > 64.233.177.100 Echo request (type=8/code=0) id=49169 seq=2] IP [ttl=64 id=57921 iplen=28 ]

Statistics for host scanme.nmap.org (45.33.32.156):
 |  Probes Sent: 2 | Rcvd: 2 | Lost: 0  (0.00%)
 |_ Max rtt: 86.053ms | Min rtt: 0.188ms | Avg rtt: 43.120ms
Statistics for host google.com (64.233.177.100):
 |  Probes Sent: 2 | Rcvd: 0 | Lost: 2  (100.00%)
 |_ Max rtt: N/A | Min rtt: N/A | Avg rtt: N/A
Raw packets sent: 4 (112B) | Rcvd: 2 (108B) | Lost: 2 (50.00%)
Nping done: 2 IP addresses pinged in 3.01 seconds

এই সরঞ্জামটির সাথে আমি একমাত্র ত্রুটি পেয়েছি হ'ল আইসিএমপি মোড ব্যবহার করে মূল সুবিধার প্রয়োজন।

$ nping -c 2 --icmp scanme.nmap.org google.com
Mode ICMP requires root privileges.

3
কি আউটপুট সঙ্গে? পরিসংখ্যান বলছে যে এটি প্রতিটি হোস্টকে 2 জন প্রেরণ করেছে, তবে পূর্ববর্তী আউটপুটটি দেখায় যে এটি 3 স্ক্যানমে.এনএমএপি.আর.এস. (45.33.32.156) এবং 1 কে গুগল.কম (.2৪.২৩.১.1.1.১০০) এ প্রেরণ করেছে। এটি চালানোর সময় আমার সাথেও ঘটে।
জোল

4
এটি মিথ্যা ... (অবশ্যই যদিও এটি নিজের সাথে বেমানান)। স্ট্রেসের সাহায্যে এটি চালানোর সময়, আমি এটি google.com- এ পিং প্রেরণ করতে দেখতে পাচ্ছি, তবে এটি স্ক্যানমে.এনএমএপি.আর.গ্রে পাঠিয়ে একটি লাইন আউটপুট করছে ting আকর্ষণীয় বাগ। যদিও সবসময় তা ঘটে না।
জোল

nmapএছাড়াও আইসিএমপি সমর্থন করে সরাসরি বিকল্প নির্দিষ্ট করে -sn। বিস্তারিত জানার জন্য আমার উত্তর দেখুন ।
স্কাই

@ এসইআই - আপনার এয়ারের জন্য ধন্যবাদ আমি এটির পাশাপাশি এটি অনুসন্ধান করার সময় খুঁজে পেয়েছি। আমি আমার পদ্ধতিকে সবচেয়ে পরিষ্কার হতে পেয়েছি।
slm

1
'এই সরঞ্জামটির সাথে আমি একমাত্র ত্রুটি পেয়েছি হ'ল আইসিএমপি মোড ব্যবহার করে মূল সুবিধার প্রয়োজন।' হ্যাঁ এটি একটি আকর্ষণীয় জিনিস তবে এটি ক্ষমতার সাথে করতে হবে (লিনাক্সে অন্তত; আপনি মূলের জন্য সেটুইড এক্সিকিউটও করতে পারেন)। এমন নয় যে আমি সেটক্যাপ ব্যবহার করব বা সেটআপ দেব giving ....
প্রাইফটান

18

fping একই নামের একটি ফেডোরা প্যাকেজটিতে রয়েছে এবং অনেক হোস্ট, বা আইপি অ্যাড্রেসের একটি সেটকে অনুমতি দেয়।

$ fping -a -A -c 1 hosta hostb
192.168.0.20 : xmt/rcv/%loss = 1/1/0%, min/avg/max = 0.64/0.64/0.64
192.168.1.3  : xmt/rcv/%loss = 1/1/0%, min/avg/max = 0.50/0.50/0.50

ফাইপিং একটি পিং প্যাকেট প্রেরণ করবে এবং রাউন্ড-রবিন ফ্যাশনে পরবর্তী টার্গেটে চলে যাবে ... যদি কোনও লক্ষ্য উত্তর দেয় তবে তা নোট করে তালিকা থেকে সরানো হবে


9
oping host1 host2 host3

বর্ণনা:

নেটওয়ার্ক হোস্টগুলির পুনঃব্যবহারযোগ্যতা পরীক্ষা করার জন্য অপিং আইসিএমপি প্যাকেজগুলি ("পিং প্যাকেট" হিসাবে বেশি পরিচিত) ব্যবহার করে। এটি IPv4 এবং / অথবা IPv6 স্বচ্ছভাবে ব্যবহার করে সমান্তরালে একাধিক হোস্টকে পিংিং সমর্থন করে।

এই প্যাকেজটিতে দুটি কমান্ড লাইন অ্যাপ্লিকেশন রয়েছে: "অপিং" পিন (1), পিং 6 (1) এবং ফপিং (1) এর মতো সরঞ্জামগুলির প্রতিস্থাপন। "নোপিং" একটি এনক্রস-ভিত্তিক সরঞ্জাম যা পিং করার সময় পরিসংখ্যান প্রদর্শন করে এবং অবিচ্ছিন্ন রাউন্ড-ট্রিপ সময়কে হাইলাইট করে।


কেবলমাত্র পেডেন্টিক হতে: প্রযুক্তিগতভাবে আইসিএমপি সাধারণভাবে ত্রুটি প্রতিবেদন করার জন্য এবং এর অনেকগুলি বিভিন্ন ক্ষমতা রয়েছে। প্রকৃতপক্ষে পিং ECHO_REQUEST / ECHO_REPLY ধরণের আইসিএমপি ব্যবহার করে (প্রাক্তন আইরিকের জন্য 8 টি কিন্তু এটি অনেক দিন হয়ে গেছে - এবং আমি চেক করতে খুব অলস)। আপনি যে বর্ণনাটি উদ্ধৃত করেছেন তা আসলে নিজেই আবিষ্কারের জন্য তবে কোনওভাবেই এটি কঠোরভাবে সঠিক নয় (বা এটি হওয়া উচিত তার চেয়ে অনেক বেশি সরলীকৃত ... বা সম্ভবত না, আমার ধারণা অনেকের পক্ষে সম্ভবত এটি সেভাবে ভাল তবে যাই হোক আমার পক্ষে তা নয় not )।
প্রাইফটান


6

আমি জানি এটি বিশেষভাবে আপনি যা চাইছেন তা নয় , তবে এটি সম্পাদন করার জন্য একটি ব্যাশ স্ক্রিপ্ট:

#!/bin/bash

for host; do
    ping -c5 "$host" 2>&1 | tail -3 &
done

wait

এটি আপনার শেষ পয়েন্টগুলি কমান্ড লাইন আর্গুমেন্ট হিসাবে গ্রহণ করবে এবং পটভূমি প্রক্রিয়া হিসাবে প্রত্যেকে 5 টি কাউন্টিং পিং প্রেরণ করবে এবং তারপরে প্রস্থান করার আগে সমস্ত শেষ হওয়ার জন্য অপেক্ষা করবে। এটি পিং আউটপুটের শেষ তিনটি লাইন মুদ্রণ করবে যা সাফল্যের হার এবং বিলম্বিতা সম্পর্কে দরকারী পরিসংখ্যানগুলিতে রয়েছে।


3
আপনার পিডগুলি মনে রাখার দরকার নেই। একটি সাদামাটা waitসমস্ত সক্রিয় শিশু প্রক্রিয়াগুলির জন্য অপেক্ষা করবে, যাতে আপনি দ্বিতীয় লুপটি এড়াতে পারেন। আমি মনে করি যে কারণে বাশ স্ক্রিপ্ট না লেখার প্রয়োজন পড়ার কারণ জিজ্ঞাসা করা হয়েছিল তার একটি অংশ হ'ল এমন একটি সমাধান থাকা যা কোনও মেশিনে কোনও স্ক্রিপ্ট না নিয়ে বা না লিখেই কাজ করে। এটি সংক্ষিপ্ত করা আরও অনুকূল বলে মনে হচ্ছে, সুতরাং আমি যুক্তির কার্যভারটি এড়ানো এবং কেবল for host; doআপনার প্রথম লুপে করাই ভাল মনে করব । যদি এটি zsh ছিল, আপনি এড়াতে পারে doএবং done: এবং মাত্র করি, interativelyfor host in google.com; ping -c5 "$host" |& tail -3 & wait
Jol

4
একটি সিগিন্ট ট্র্যাপ এই স্ক্রিপ্টটিকে অনেক বেশি ব্যবহারিক করে তুলবে।
গিলস 'অশুভ হওয়া বন্ধ করুন'

2
ইন্টারেক্টিভ ব্যবহারের জন্য, এই কেবল পটভূমি কমান্ড (অর্থাত ব্যবহার করছে command &একটি subshell (ডান বন্ধনী সঙ্গে অর্থাত মোড়ানো) এবং সঙ্গে) waitউদাহরণস্বরূপ, এক কৃত্রিম কমান্ড মধ্যে কমান্ড যে কোন সংখ্যার একত্রিত: (for f in google.com yahoo.com microsoft.com; do ping $f & done; wait)। তাদের ফলাফলগুলি আন্তঃবিভক্ত হবে এবং আপনি যখন এই আদেশের পরে এটি সিটিআর করবেন, তখন তিনটি শিশু প্রক্রিয়া মারা যাবে। শেলটিতে প্রচুর শক্তিশালী জব কন্ট্রোল কনস্ট্রাক্ট রয়েছে এবং এটি তাদের মধ্যে একটি।
মিথ্যা রায়ান

2
সবাইকে ধন্যবাদ. হ্যাঁ আমি এটি পোস্ট করতে দ্বিধাগ্রস্ত ছিলাম তবে আমি বুঝতে পেরেছি যে এখানে Q / A গুলি কেবল ওপি-র জন্য নয়, একই ধরণের সমস্যার মুখোমুখি প্রত্যেকের জন্য এবং আমি দেখেছি এমন লোকেরা এই প্রশ্নটি নিয়ে হোঁচট খায় এবং অতিরিক্ত সফ্টওয়্যার ইনস্টল করতে চান না কাজটি সম্পাদন করা
জেসি_বি

@ জোল তবে অবশ্যই এই সরঞ্জামগুলি সমস্ত হোস্টে ডিফল্টরূপে ইনস্টল করা হয়নি। এটি অবশ্যই আপনাকে অসত্য বলবে না তবে ...
প্রাইফটন

2

আমি মনে করি এটি আপনার জন্য কি করতে পারে?

eval $(printf 'ping "%s" & ' host1 host2 host3)

এটি printfপ্রতিটি যুক্তির উপর তার বিন্যাসের স্ট্রিংটিকে পুনরায় ব্যবহার করার সময় এর আর্গুমেন্টগুলিকে "স্ব-পুনরাবৃত্তি" করার ক্ষমতার সুযোগ নেয় । উপরের printfফলে ping <hostname> &প্রতিটি হোস্টের জন্য আর্গুমেন্ট হিসাবে সরবরাহ করা স্ট্রিংগুলির একটি ক্রম তৈরি করে এবং কমান্ড সাবস্টিটিউশনের মাধ্যমে কমান্ডকে evalঅবিলম্বে সম্পাদন করার জন্য কমান্ডের এই ক্রমটি ফিড করে।

printfএবং evalকমান্ডগুলি পসিএক্স স্ট্যান্ডার্ড, পাশাপাশি কমান্ড সাবস্টিটিউশন।

এ জাতীয় এবং কমান্ডের সমন্বয়ে একটি সাব-শেলটিতে পুরো পুরো কমান্ডটি আবদ্ধ করা wait:

(eval $(printf 'ping "%s" & ' host1 host2 host3) && wait)

একটি সাধারণ দিয়ে ইচ্ছায় সবকিছুতে বাধা দেওয়ার ক্ষমতা সরবরাহ করে Ctrl+C

অন্যথায় আপনি প্রতিটি pingকমান্ড শেলের সাধারণ কাজের নিয়ন্ত্রণের মাধ্যমে এককভাবে নিয়ন্ত্রণ করতে পারেন ।

যদি আপনার শেলটির প্রক্রিয়া বিকল্পগুলির পক্ষেও সমর্থন থাকে তবে আপনি নিম্নলিখিতগুলিও ব্যবহার করতে পারেন:

. <(printf 'ping "%s" & ' host1 host2 host3)

কয়েক অক্ষর টাইপ কম।

গিস্টটি সমান eval, তবে প্রসেস সাবস্টিটিউশন এর মাধ্যমে (ওরফে ) কমান্ডকে pingগুলি এর ক্রম ফিড করে ।.source


2

এনম্যাপ পিং স্ক্যানগুলি (আইসিএমপি) এবং একাধিক হোস্টকে সমর্থন করে:

nmap -sn -n 127.0.0.1 8.8.8.8

আপনি কল করা আপনার টার্গেটের সমস্ত আইপি (স্পেস বা নিউলাইন দ্বারা পৃথক) যুক্ত একটি ফাইলও তৈরি করতে পারেন targets.txt। তারপরে চালান:

nmap -sn -n -iL targets.txt

বিকল্পগুলি ব্যাখ্যা করা হয়েছে:

  • -sn পিং স্ক্যান
  • -n ডিএনএস রেজোলিউশন অক্ষম করুন।
  • -iL ইনপুট ফাইলের নাম।

আপনি যদি সত্যিই বিশাল সংখ্যক টার্গেটের পিং করতে চান তবে অন্যান্য আকর্ষণীয় বিকল্পগুলি:

  • -T4 স্ক্যানের সময়কাল হ্রাস করতে সময় বাড়ান।
  • --min-parallelism 100 সমান্তরাল প্রোবের সংখ্যা বৃদ্ধি করুন।
  • -oG <file> গ্রেপযোগ্য বিন্যাসে স্ক্যান ফলাফল লিখুন।

একটি ফাইল তৈরি না করে

মনে রাখবেন যে আপনি কোনও ফাইল তৈরিও এড়িয়ে -যেতে পারেন এবং পাইপ থেকে ইনপুট নিতে |, বা স্টাডিনের মাধ্যমে আউটপুট পুনর্নির্দেশের জন্য traditionalতিহ্যগত পদ্ধতিগুলির মাধ্যমে ব্যবহার করতে পারেন ।

উদাহরণ:

$ ( echo www.google.com; echo www.yahoo.com ) | sudo nmap -sn -n -iL -

-অথবা-

$ sudo nmap -sn -n -iL - < <(echo www.google.com; echo www.yahoo.com)

-অথবা-

$ sudo nmap -sn -n -iL - <<< $'www.google.com\nwww.yahoo.com'

তথ্যসূত্র


2

xargsএকাধিক pingঅনুরোধ সম্পাদন করতে সাধারণ কমান্ড ব্যবহার করে :

echo host1 host2 host3 | xargs -n1 -P0 ping -c 4

host1 host2 host3হোস্টের চলক সংখ্যা যেখানে (আইপি বা হোস্টনামের কোনও সংমিশ্রণ) হতে পারে।

এটি xargsডিফল্টগুলিকে পিং এক্সিকিউশন প্রতি 1 ইনপুট আর্গুমেন্টকে জোর করতে, এবং সীমাহীন শিশু প্রসেসের সীমিত সীমিত সংখ্যক (পিঞ্জড হোস্ট প্রতি 1) মঞ্জুরি দেয় al বিপুল সংখ্যক হোস্টকে পিং করতে চাইলে -P(ওরফে --max-procs) একটি বুদ্ধিমানের মান নির্ধারণ করা সম্ভবত বুদ্ধিমানের কাজ (তারা সমস্তই প্রক্রিয়াজাত করা হবে; একই সাথে আরও কম)।

এটি সরাসরি ব্যবহারের জন্য যথেষ্ট সংক্ষিপ্ত, আপনার শেল প্রোফাইল বা আরসি ফাইলে একটি ফাংশন হিসাবে যুক্ত করা যেতে পারে বা আপনার মধ্যে ছোট স্ক্রিপ্টে রূপান্তরিত হতে পারে $PATH। নীচের উদাহরণগুলিতে -Pঅতিরিক্ত সংস্থান ব্যবহার এড়াতে 10 এ সেট করা হয়েছে।

উদাহরণ লিপি: /usr/bin/mping

#!/bin/sh

echo $@ | xargs -n1 -P10 ping -c4

মধ্যে ফাংশন উদাহরণ ~/.bashrc

function mping() {
    echo $@ | xargs -n1 -P10 ping -c4
} 

এবং হিসাবে ব্যবহার করুন:

mping host1 host2 host3 ...

1
আপনি পিং 2 সেকেন্ডের চেয়ে বেশি অপেক্ষা করতে পারা -w 2 ব্যবহারের বিষয়টি বিবেচনা করতে পারেন। ডিফল্টটি 10 ​​সেকেন্ড, যা প্রতি পিনের অনুরোধ, তাই এটি সম্পূর্ণ হতে 30+ সেকেন্ড সময় নিতে পারে।
ক্রিগগি

1
হ্যাঁ, আপনি --max-procs/ এর জন্য সেট করার চেয়ে আরও বেশি হোস্টকে পিং করা ভাল তবে এটি একটি ভাল ধারণা -P। তবে, হোস্টের চেয়ে কম সংখ্যার জন্য -P, সমস্ত পিংস সমান্তরালভাবে কার্যকর করা হচ্ছে - যার অর্থ এটি একক দীর্ঘতম পিং কার্যকর করা যতক্ষণ লাগবে ততক্ষণে সমস্তটির যোগফল।
জেসন মুসগ্রোভ

1

আপনি ঠিক কী চান তা আমি জানি না তবে আপনি শেষ 8 বিট-সেটকে দশমিক 255 এ পরিবর্তন করতে পারেন, তাই আপনার হোস্টগুলি একটি সম্প্রচার গ্রহণ করবে, আসলে এটি নেটওয়ার্কে বিদ্যমান সমস্ত ডিভাইসে পিং প্যাকেট প্রেরণ করবে।

ping -c 1 xx.xx.xx.255

1
আমি যা খুঁজছি তা নয়।
slm

8
সাইটে স্বাগতম - এটি একটি ভাল চিন্তাভাবনা এবং একটি আইপি নেটওয়ার্কে ব্রডকাস্ট আইপি এবং এর উদ্দেশ্য বোঝার জন্য এবং এটি সম্পূর্ণ সঠিক shows তবে এটি সংকীর্ণ-সংজ্ঞায়িত ক্ষেত্রে ওপির নির্দিষ্ট প্রয়োজনের সাথে মেলে না। দয়া করে চালিয়ে যান এবং অন্যান্য প্রশ্নের উত্তর দেওয়ার জন্য ক্র্যাক করুন।
ক্রিগগি

0
ping google.com && ping localhost

আউটপুট

Pinging google.com [xxxxxxx] with 32 bytes of data:
Reply from xxxxxxx: bytes=32 time=210ms TTL=49
Reply from ::1: time<1ms
Reply from xxxxxxx: bytes=32 time=212ms TTL=49
Reply from ::1: time<1ms
Reply from xxxxxxx: bytes=32 time=211ms TTL=49
Reply from ::1: time<1ms

এর ডাউনসাইডগুলি হ'ল) &&প্রথম কমান্ডটি সফলভাবে সম্পন্ন হলে অপারেটর কেবল দ্বিতীয় কমান্ডটি চালানোর অনুমতি দেয়, (উদাহরণস্বরূপ 0 এর প্রস্থান কোড) এবং 2) প্রথম পিং কখনও কোনও ^ সি ব্যাহত না করে শেষ হবে না। একটি -c এবং a -w পরামিতি যুক্ত বিবেচনা করুন। সাইটে স্বাগতম!
ক্রিগগি

-1

শুধু মজা এবং লাভের জন্য ...

#!/bin/sh -

# sends six "pings" to a list of hosts defined in "hosts" below

hosts="
host.a
host.b
host.c
host.d
host.e
"

for p in $hosts
do
# ONLY CHOOSE ONE OF THE FOLLOWING, NOT BOTH
# dump results to file
    ping -c 6 $p >>./PINGED
# dump output to console
    ping -c 6 $p
done

exit

এটি সহজেই বাড়ানো যেতে পারে । যা এটি বেশ কার্যকর করে তোলে। :)

অতিরিক্ত বিকল্পগুলির জন্য দয়া করে বিএসডি পিং এবং লিনাক্স পিংয়ের ম্যান পেজগুলি দেখুন

আছে HTH

সম্পাদনা: প্রতিটি 6 টি পিংকে পিং ক্যোরিয়াস শেষ করতে এবং ম্যান পৃষ্ঠা বিকল্পগুলি যুক্ত করতে সামান্য আপডেট করা হয়েছে।


pingমারাত্মক ত্রুটি না আঘাত করলে প্রথম কলটি আর ফিরে আসে না।
গিলস 'অশুভ হওয়া বন্ধ করুন'

সত্যি? আমি এখানে এটি পোস্ট করার আগে এটি পরীক্ষা করেছি এবং এটি বর্ণিত হিসাবে কাজ করেছে। আপনি জানেন যে প্রতিটি হোস্ট পিন হওয়ার প্রতিক্রিয়া জানায় না। আপনার জিজ্ঞাসা করা হোস্ট সম্ভবত সাড়া দিচ্ছে না। যে কোনো ক্ষেত্রে. দ্রুত প্রতিক্রিয়া সরবরাহের প্রয়াসে, আমি প্রশ্নগুলি প্রতি হোস্ট প্রতি 6 টি অনুরোধের মধ্যে সীমাবদ্ধ করেছি।
কেউ

2
এখন অন্তত স্ক্রিপ্টটি অনুশীলনে সমাপ্ত হওয়ার সম্ভাবনা রয়েছে। তবে সমান্তরালতা ছাড়া এটি এখনও বেশ বেহুদা। যদি প্রথম হোস্ট প্রতিক্রিয়া জানায়, ব্যবহারকারী প্রথম 5 সেকেন্ডের জন্য অন্যান্য হোস্টগুলির কোনও তথ্য পায় না।
গিলস 'অসন্তুষ্ট হওয়া বন্ধ করুন'

ভাল এটি প্রয়োজন হিসাবে আরও একটি উদাহরণ নির্মাণ করা হয়েছে, যেমন প্রয়োজন। আমি সহজেই অন্যটি তৈরি করতে পারি যা আপনার পাইপকে সম্পূর্ণরূপে সন্তুষ্ট করে। তবে আপনি কি আসলেই এর পরে? :)
কেউ

1
আমার যা করা উচিত তা হ'ল পিং ম্যান পৃষ্ঠায় একটি লিঙ্ক তৈরি করা। সত্যি বলতে. আমি এটির জন্য সহজেই নিজের উপায়ে পরিবর্তন করার জন্য এটি একটি সহজ টেম্পলেট হিসাবে তৈরি করেছি। পিং কাজ আয়তন বহুলাংশে বিভিন্ন অপারেটিং সিস্টেম এর উপর বিভিন্ন, এবং বিভিন্ন নেটওয়ার্ক অবস্থার প্রতিটি পৃথক অধীনে কাজ করা যেতে পারে অগণ্য অধীনে। সুতরাং প্রত্যেকের জন্য কোনও "নিখুঁত" ডিফল্ট নেই। প্রত্যেকের নিজস্ব "মিষ্টি স্পট" রয়েছে। :) আমি কি উল্লেখ করেছি যে এটি আমার পক্ষে নিখুঁতভাবে কাজ করে? ;)
কেউ

-2

সাধারণ কমান্ডের নীচে ব্যবহার করুন:

$ getip(){ ping -c 1 -t 1 $1 | head -1 | cut -d ' ' -f 3 | tr -d '()' 2>&1 | tee >> /tmp/result.log & }
$ getip 'hostname.number1.net'
$ getip 'hostname.number2.net'
$ getip 'hostname.number3.net'
$ getip 'hostname.number4.net'
$ getip 'hostname.number5.net'
$ getip 'hostname.number6.net'
$ getip 'hostname.number7.net'
$ getip 'hostname.number8.net'
$ cat /tmp/result.log
ABC.DEF.GHI.XY1
ABC.DEF.GHI.XY2
ABC.DEF.GHI.XY3
ABC.DEF.GHI.XY4
ABC.DEF.GHI.XY5
ABC.DEF.GHI.XY6
ABC.DEF.GHI.XY7
ABC.DEF.GHI.XY8
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.