TOC:
- ব্যাশ এবং
timeout
- ব্যবহার
nc
- হুকুম
- RHEL 6 (এনসি-1.84)
- RHEL 7 (nmap-ncat-6.40)
- মন্তব্য
ব্যাশ এবং ব্যবহার করে timeout
:
নোট যেটি timeout
RHEL 6+ এর সাথে উপস্থিত থাকতে হবে বা বিকল্পভাবে জিএনইউ কোর্টিলস 8.22 তে পাওয়া যাবে। MacOS এ এটি ব্যবহার করে ইনস্টল করুন brew install coreutils
এবং এটি হিসাবে ব্যবহার করুন gtimeout
।
COMMAND:
$ timeout $TIMEOUT_SECONDS bash -c "</dev/tcp/${HOST}/${PORT}"; echo $?
হোস্ট এবং পোর্টকে প্যারামিট্রাইজ করা হলে, উপরের মতো ${HOST}
এবং সেগুলি নির্দিষ্ট করে দেওয়ার বিষয়ে নিশ্চিত হন ${PORT}
। এগুলিকে কেবল $HOST
এবং হিসাবে উল্লেখ করবেন না $PORT
, যেমন ধনুর্বন্ধনী ছাড়া; এটি এই ক্ষেত্রে কাজ করবে না।
উদাহরণ:
সাফল্য:
$ timeout 2 bash -c "</dev/tcp/canyouseeme.org/80"; echo $?
0
ব্যর্থতা:
$ timeout 2 bash -c "</dev/tcp/canyouseeme.org/81"; echo $?
124
যদি আপনার অবশ্যই প্রস্থান স্থিতি সংরক্ষণ করতে পারে bash
,
$ timeout --preserve-status 2 bash -c "</dev/tcp/canyouseeme.org/81"; echo $?
143
ব্যবহার nc
:
দ্রষ্টব্য যে nc
RHEL 7 এ একটি পশ্চাদপটে অসঙ্গতিপূর্ণ সংস্করণ ইনস্টল হয়ে গেছে।
COMMAND:
মনে রাখবেন যে নীচের কমান্ডটি অনন্য that
$ nc -w $TIMEOUT_SECONDS -v $HOST $PORT </dev/null; echo $?
RHEL 6 (এনসি-1.84):
স্থাপন:
$ sudo yum install nc
উদাহরণ:
সাফল্য:
$ nc -w 2 -v canyouseeme.org 80 </dev/null; echo $?
Connection to canyouseeme.org 80 port [tcp/http] succeeded!
0
ব্যর্থতা:
$ nc -w 2 -v canyouseeme.org 81 </dev/null; echo $?
nc: connect to canyouseeme.org port 81 (tcp) timed out: Operation now in progress
1
যদি হোস্টনাম একাধিক আইপি-তে মানচিত্র করে, তবে উপরের ব্যর্থ কমান্ডটি তাদের অনেক বা সমস্তের মধ্যেই সাইকেল চালাবে। উদাহরণ স্বরূপ:
$ nc -w 2 -v microsoft.com 81 </dev/null; echo $?
nc: connect to microsoft.com port 81 (tcp) timed out: Operation now in progress
nc: connect to microsoft.com port 81 (tcp) timed out: Operation now in progress
nc: connect to microsoft.com port 81 (tcp) timed out: Operation now in progress
nc: connect to microsoft.com port 81 (tcp) timed out: Operation now in progress
nc: connect to microsoft.com port 81 (tcp) timed out: Operation now in progress
1
RHEL 7 (nmap-ncat-6.40):
স্থাপন:
$ sudo yum install nmap-ncat
উদাহরণ:
সাফল্য:
$ nc -w 2 -v canyouseeme.org 80 </dev/null; echo $?
Ncat: Version 6.40 ( http://nmap.org/ncat )
Ncat: Connected to 52.202.215.126:80.
Ncat: 0 bytes sent, 0 bytes received in 0.22 seconds.
0
ব্যর্থতা:
$ nc -w 2 -v canyouseeme.org 81 </dev/null; echo $?
Ncat: Version 6.40 ( http://nmap.org/ncat )
Ncat: Connection timed out.
1
যদি হোস্টনাম একাধিক আইপি-তে মানচিত্র করে, তবে উপরের ব্যর্থ কমান্ডটি তাদের অনেক বা সমস্তের মধ্যেই সাইকেল চালাবে। উদাহরণ স্বরূপ:
$ nc -w 2 -v microsoft.com 81 </dev/null; echo $?
Ncat: Version 6.40 ( http://nmap.org/ncat )
Ncat: Connection to 104.43.195.251 failed: Connection timed out.
Ncat: Trying next address...
Ncat: Connection to 23.100.122.175 failed: Connection timed out.
Ncat: Trying next address...
Ncat: Connection to 23.96.52.53 failed: Connection timed out.
Ncat: Trying next address...
Ncat: Connection to 191.239.213.197 failed: Connection timed out.
Ncat: Trying next address...
Ncat: Connection timed out.
1
মন্তব্য:
-v
( --verbose
) যুক্তি এবং echo $?
কমান্ড শুধুমাত্র চিত্রণ জন্য অবশ্যই আছে।