আমি কেবল df -h
আউটপুট তৃতীয় লাইন বলতে চাই ।
আমার কোন ধরণের আদেশ ব্যবহার করা উচিত?
আমি কেবল df -h
আউটপুট তৃতীয় লাইন বলতে চাই ।
আমার কোন ধরণের আদেশ ব্যবহার করা উচিত?
উত্তর:
df
কমান্ড আসলে একটি আর্গুমেন্ট ফাইলসিস্টেম যদি আপনি চান চিহ্নিতকরণের গ্রহণ করে। সুতরাং আপনি ব্যবহার করতে পারেন, উদাহরণস্বরূপ, df /home
বাdf /dev/sda3
।
যদি আপনি কোনও স্ক্রিপ্টের জন্য আউটপুট বিশ্লেষণ করতে চান, আপনি df -P
গ্যারান্টি দিতে ব্যবহার করতে চাইবেন এটি কখনও একাধিক লাইনে আবৃত হয় না। সুতরাং, উদাহরণস্বরূপ, আপনি ব্যবহার করতে পারেন df -Ph /home | tail -n +2
(তবে আপনি যদি কোনও স্ক্রিপ্টের জন্য আউটপুট পার্সিং করে থাকেন তবে সেগুলিতে ফাঁকা স্থানের ফাইলের সম্ভাবনা সম্পর্কে সচেতন হন)
df /home
একটি শিরোনাম সরবরাহ করে। আপনি ব্যবহারকারীর উদ্দেশ্য ব্যাখ্যা করছেন। তুমি ঠিক হতে পারো. আপনি ভুল হতে পারেন, কে জানে?
tail -n +2
শিরোলেখ অপসারণ করে।
আপনি head
এবং এর সমন্বয় ব্যবহার করতে পারেন tail
:
df -h | head -3 | tail -1
অথবা
df -h | tail -n +3 | head -1
তবে মনে রাখবেন যে, নিজের df
অপশন থেকে আউটপুট ফিল্টার করতে দেয় , df
কোনও বাহ্যিক কমান্ড ব্যবহার করার আগে আপনাকে প্রথমে এগুলি দেখতে হবে।
চেক man df
।
আওক পাঠ্য প্রক্রিয়াজাতকরণ সরঞ্জাম, সুতরাং এটি এই কাজের জন্য উপযুক্ত
df -h | awk 'NR == 3'
আমি ধরে নিলাম আপনি প্রয়োজনীয়ভাবে তৃতীয় লাইনের সন্ধান করছেন না, তবে সেই রেখার জন্য যা নির্দিষ্ট ডিস্ক (যেমন /dev/sda3
) বা নির্দিষ্ট মাউন্ট পয়েন্টের উল্লেখ করেছে (উদাঃ/home
) উল্লেখ করেছেন।
সুতরাং আউটপুট ক্রম পরিবর্তিত হতে পারে এবং আপনি অন্যরকম ফলাফল পেতে পারেন এমনটি অনিরাপদ বলে তৃতীয় লাইনটি প্রদর্শন করার পরিবর্তে আপনি সামগ্রী দ্বারা আউটপুট ফিল্টার করতে পারেন এবং নির্দিষ্ট প্যাটার্নের সাথে মেলে এমন কোনও লাইন বা কীওয়ার্ড ধারণ করতে পারেন।
এটির জন্য আপনার সরঞ্জাম grep
।
উদাহরণস্বরূপ, আপনি যদি ডিভাইস সম্পর্কে লাইনটি চান /dev/sda3
, আপনি টাইপ করুন:
df -h | grep '/dev/sda3'
আপনি যদি নিজের হোম ডিরেক্টরিটিকে মাউন্ট পয়েন্ট হিসাবে উল্লেখ করে এমন লাইনটি চান তবে ব্যবহার করুন:
df -h | grep '/home'
df -h /dev/sda3
বা df -h /home
(পরবর্তীকালে এটি মাউন্ট পয়েন্ট না হলেও এমনকি কাজ করে)।
আপনি এটি ব্যবহার করতে পারেন perl
:
df -h | perl -ne 'print if $.==3'
এটি $.
হ'ল বর্তমান লাইন নম্বর, যাতে আপনি এটি দিয়ে Nth লাইনটি মুদ্রণ করতে পারেন perl -ne 'print if $.==N'
।
আমার প্রথম ধারণাটি একটি মাথা-লেজ-নির্মাণ হবে।
উদাহরণ:
df -h | head -3 | tail -1
head -3
তিন লাইনের পরে আউটপুট থামিয়ে দেয় এবং tail -1
কেবল শেষ লাইনের আউটপুট দেয়।
বিকল্প হিসাবে, যদি আপনি জানেন, আউটপুটটি কেমন দেখাচ্ছে, আপনি grep
নির্দিষ্ট স্ট্রিংযুক্ত লাইনগুলি খুঁজতেও ব্যবহার করতে পারেন ।