Tee অকেজো নয়
আপনি হয়ত জানতেন? যদি না হয়, পড়ুন! অথবা আপনি কীভাবে এটি কাজ করে তা জানেন তবে এটি কেন বিদ্যমান তা নিশ্চিত না থাকলে ইউনিক্স দর্শনের সাথে এটি কীভাবে ফিট করে তা দেখতে শেষ পর্যন্ত যান।
কি হল উদ্দেশ্য tee?
এর সর্বাধিকতম সময়ে, এটি স্ট্যান্ডার্ড ইনপুটটিতে ডেটা নেয় এবং এটি স্ট্যান্ডার্ড আউটপুট এবং এক (বা আরও) ফাইলে লেখে। এটি একটি নদীর গভীরতানির্ণ টুকরোটির সাথে তুলনা করা হয়েছে যেভাবে এটি একটি ইনপুট দুটি আউটপুটগুলিতে বিভক্ত করে (এবং দুটি দিক)।
উদাহরণ
আসুন আপনার প্রথম উদাহরণটি নেওয়া যাক:
do_something | tee -a logfile
এটি আউটপুট নেয় do_somethingএবং এটি লগফাইলে সংযোজন করে, ব্যবহারকারীর কাছে প্রদর্শন করে। আসলে উইকিপিডিয়া পৃষ্ঠাতেtee এটি দ্বিতীয় উদাহরণ হিসাবে রয়েছে:
কমান্ড থেকে একটি বিদ্যমান ফাইলে আউটপুটটি দেখতে এবং যুক্ত করতে:
lint program.c | tee -a program.lint
এটি কম্পিউটারে লিন্ট প্রোগ্রাম.c কমান্ডের স্ট্যান্ডার্ড আউটপুট প্রদর্শন করে এবং একই সাথে প্রোগ্রাম.লিন্ট ফাইলের শেষে এটির একটি অনুলিপি যুক্ত করে। প্রোগ্রাম.লিন্ট ফাইলটি না থাকলে এটি তৈরি হয়।
পরের উদাহরণটিতে আরও একটি ব্যবহার রয়েছে: অনুমতি বাড়ানো :
অনুমতি বাড়ানোর অনুমতি দেওয়ার জন্য:
cat ~/.ssh/id_rsa.pub | ssh admin@server "sudo tee -a /root/.ssh/authorized_keys2 > /dev/null"
এই উদাহরণটি দেখায় যে টি sudoকমান্ডের অন্তর্নিহিত সীমাবদ্ধতা বাইপাস করতে ব্যবহৃত হচ্ছে । sudoকোনও ফাইলে স্ট্যান্ডার্ড আউটপুট পাইপ করতে অক্ষম। এর স্ট্যান্ডার্ড আউট স্ট্রিমের মধ্যে ফেলে দিয়ে /dev/nullআমরা কনসোলে মিরর করা আউটপুটটিও দমন করি। উপরের কমান্ডটি সার্ভারের মূল অনুমোদনের তালিকায় ব্যবহারকারীর পাবলিক কী ইনস্টল করে বর্তমান ব্যবহারকারীকে ssh ওভার সার্ভারে রুট অ্যাক্সেস দেয় gives
অথবা সম্ভবত আপনি একটি কমান্ডের আউটপুট নিতে চান, এটি কোথাও লিখুন এবং এটি অন্য কমান্ডের ইনপুট হিসাবে ব্যবহার করতে চান?
আপনি কোনও কমান্ডের আউটপুট কোনও ফাইলে সংরক্ষণ করতে টি কমান্ড ব্যবহার করতে পারেন এবং একই আউটপুটটিকে অন্য কমান্ডের ইনপুট হিসাবে পুনর্নির্দেশ করতে পারেন।
নিম্নলিখিত কমান্ডটি ক্রন্টব এন্ট্রিগুলির ব্যাকআপ নেবে, এবং ক্রন্টব এন্ট্রিগুলি সেড কমান্ডের জন্য একটি ইনপুট হিসাবে পাস করবে যা প্রতিস্থাপনটি করবে। প্রতিস্থাপনের পরে, এটি একটি নতুন ক্রোন জব হিসাবে যুক্ত করা হবে।
$ crontab -l | tee crontab-backup.txt | sed 's/old/new/' | crontab –
( টি কমান্ড ব্যবহারের উদাহরণগুলিতে ক্রেডিট )
Tee ইউনিক্স দর্শনের সাথে কাজ করে:
এমন একটি প্রোগ্রাম লিখুন যা একটি কাজ করে এবং এটি ভাল করে। এক সাথে কাজ করার জন্য প্রোগ্রাম লিখুন। পাঠ্য স্ট্রিমগুলি পরিচালনা করতে প্রোগ্রামগুলি লিখুন, কারণ এটি সর্বজনীন ইন্টারফেস।
( ইউনিক্স দর্শনের মূল বিষয়গুলিতে ক্রেডিট )
tee এই সমস্ত ফিট করে:
- এটি একটি কাজ করে: ইনপুটটির একটি অতিরিক্ত অনুলিপি তৈরি করে
- এটি অন্যান্য প্রোগ্রামগুলির সাথে কাজ করে কারণ এটি আঠালো (বা আপনি যদি পছন্দ করেন তবে 'টি' নদীর গভীরতানির্ণয়) অন্য প্রোগ্রামগুলিকে উপরের উদাহরণগুলির মতো একসাথে কাজ করতে দেয়
- এটি স্ট্যান্ডার্ড ইনপুটটিতে দেওয়া একটি পাঠ্য স্ট্রিমের কৌশল দ্বারা এটি করে