df এবং মাউন্ট ব্যবহার করার সময় কেবল শারীরিক ডিস্কগুলি দেখান


9

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

আউটপুটে আমার শারীরিক পার্টিশনটি সর্বদা ' /' দিয়ে শুরু হয় , তাই আমি এর জন্য উপকরণ তৈরি করার চেষ্টা করেছি dfএবং mount:

alias df1="df | egrep '^/'"
alias mount1="mount | egrep '^/'"

এটি এর জন্য ঠিক আছে mount1(যদিও এটি ' /' লাল রঙে দেখায় ) তবে এর জন্য df1আমি মাঝে মাঝে -hবিকল্পটি যুক্ত করতে চাই dfএবং করতে পারি না df1 -h। আমি যে বিকল্প ব্যবহার করতে চাই তার সংযোগের জন্য আমি একটি উপাধি রাখি না। আমি কি সত্যিই বাশ (আমি পছন্দ না করবো) এর কার্যকারিতা সংজ্ঞায়িত করতে হবে? এর জন্য আরও ভাল সমাধান কি আছে df1?

উত্তর:


6

আপনি df1নিম্নলিখিত উপন্যাসটি ব্যবহার করে যুক্তির বিষয়টি সমাধান করতে পারেন :

alias df1='df --type btrfs --type ext4 --type ext3 --type ext2 --type vfat --type iso9660'

আপনার আগ্রহী অন্য কোনও প্রকার ( xfs, fuseblk(আধুনিক এনটিএফএস সমর্থনের জন্য, যেমন @ পান্ডা ইঙ্গিত করেছেন), ইত্যাদি) নিশ্চিত করে নিন that এর সাথে আপনি করতে পারেন df1 -hএবং প্রত্যাশিত ফলাফলটি পেতে পারেন ।

mountএকটি -tবিকল্প আছে তবে আপনি এটি একাধিকবার নির্দিষ্ট করতে পারবেন না (কেবল সর্বশেষটি নেওয়া হয়েছে), সেখানে আমি ব্যবহার করব:

alias mount1="mount | /bin/grep -E '^/'"

আমি ব্যবহার করছি grep -Eযেমন egrepঅনুমোদিত নয় এবং ব্যবহার /bin/grepতোলে নিশ্চিত করুন যে আপনি ব্যবহার করছেন না --colour=autoজন্য একটি alias থেকে grep/egrep


df --type ntfs5 এনটিএফএস বিভাজন দেখানো হচ্ছে না এবং ফলস্বরূপ এগুলি এড়িয়ে
পান্ড্যা

আমি ব্যবহার করতে করেছি --type fuseblkযে জন্য
পান্ড্য

@ পান্ড্য যা আমি ইঙ্গিত করেছিলাম, আপনাকে অন্যান্য ধরণের যুক্ত করা দরকার যা আপনি আগ্রহী several ।
অ্যান্থন

1
@ পান্ড্যাকে দেখে মনে হচ্ছে যে --type ntfsএটি আমার আরফে ছিল ন্যূনতম এনটিএফএস সমর্থন (উইন্ডোজ% - - এ রিবুট করার পরে আপনার এনটিএফএস বিভাজনে একটি ফাইল সিস্টেম পরীক্ষা করার সময় থেকে)) ধন্যবাদ আমার উত্তর আপডেট।
অ্যান্থন

3

আপনি নিম্নলিখিত হিসাবে ফাংশন সংজ্ঞায়িত করতে পারেন:

function df1() { df "$@" | grep -E '^/'; }

উদাহরণ আউটপুট:

$ df1 -h
/dev/sda8        25G  8.1G   16G  35% /
/dev/sda4        25G   20G  5.8G  78% /media/pandya/Documents+Edu
/dev/sda3       9.5G  7.1G  2.0G  79% /media/pandya/Ext4
/dev/sda7        24G   17G  6.9G  71% /media/pandya/Extra+Other
/dev/sda6        26G   25G  448M  99% /media/pandya/Media+Game
/dev/sda10       15G  7.9G  7.1G  53% /media/pandya/Miscellaneous
/dev/sda5        36G   22G   14G  63% /media/pandya/Software+OS

এখানে $@আপনাকে আপনার যুক্তিগুলি ইনপুট করতে দেয়! [দ্রষ্টব্য যে $@সর্বদা ডাবল উদ্ধৃতি চিহ্নের মধ্যে লেখা উচিত যদি না আপনি যদি না চান তার কোনও ठोस কারণ না থাকে। -ed]


3

যদি অন্যটিতে স্যুইচ করা একটি dfবিকল্প হয় তবে pydfপরিবর্তে এটি ব্যবহার করুন, কারণ এটি ডিফল্টরূপে 0 টি ব্লকযুক্ত ফাইল সিস্টেমগুলি প্রদর্শন করে না এবং এতে একটি গেজ, রঙ এবং ডিফল্টরূপে সক্ষম কিছু অন্যান্য বৈশিষ্ট্য রয়েছে। এটি মোটামুটিভাবে aliised ভাল কাজ করে dfএবং মূল \dfযাইহোক যাইহোক ব্যবহার করে উপলব্ধ ।


আমার জন্য এখানে সবচেয়ে দরকারী উত্তর। দুঃখের বিষয়, এটি বিদ্যমান নেই mount
emk2203

কিছুটা দেরি হলেও আমার জন্য পাইডএফ আমার একক শারীরিক ড্রাইভ এবং 33 / ডিভ / লুপ ## ড্রাইভ দেখিয়েছে যখন আমি চাই সমস্ত শারীরিক ড্রাইভ। গৃহীত ডিএফ উত্তর কাজ করে, তবে আমি পরিবর্তে এই ফর্মটি পছন্দ করি: ওরফে dfh = 'df -h -x স্কোয়াশফস -x tmpfs'
স্টিভ ভ্যালিয়ার

1

ঠিকানায় এই উত্তরটি প্রচেষ্টা Yves এর নিম্নলিখিত ব্যস্ততার:

আমি প্রতিটি বিকল্পের সংমিশ্রণের জন্য একটি উপনাম না রাখাই পছন্দ করব (1)

এবং

যদিও এটি '/' লাল দেখায় (2)

এবং (3) বিভিন্ন আউটপুটটিতে তথ্যের একটি গুরুত্বপূর্ণ অংশ যুক্ত করুন, যা dfসরবরাহকৃত পতাকা অনুসারে পরিবর্তিত হয় এমন শিরোনামের লাইন।

(1) আপনার প্রয়োজন function, কারণ সংজ্ঞা অনুসারে এটি আর্গুমেন্ট গ্রহণ করে। এবং, এটি নীচের হিসাবে আপনি খুঁজে পাবেন হিসাবে সংজ্ঞা দেওয়া এবং ব্যবহার করা খুব সহজ is

(২) লাল /উত্পাদিত হয় grep --colorযা এটি নিজের কাছে একটি সাধারণ নাম grep(আপনি এটি চালিয়ে দেখতে পারেন alias)।

কোড

function df1 
{ 
    df $* | sed -n '1p;/^\//p;'
}

উপরের নিউলাইনগুলি পঠনযোগ্যতা উন্নত করার উদ্দেশ্যে করা হয়েছে, আপনি স্থান দ্বারা তাদের প্রতিস্থাপন করতে পারেন।

একটি ইন্টারেক্টিভ বাশ সেশনে সরাসরি এই স্নিপেটটি অনুলিপি করুন এবং আটকান বা আরও ভাল, এটি আপনার এতে যুক্ত করুন ~/.bashrc

ব্যবহারের উদাহরণ

$ df1 
Filesystem                        1K-blocks      Used Available Use% Mounted on
/dev/disk1                        487358464 316093104 171009360  65% /
/dev/disk2                           524032    302620    221412  58% /Volumes/Packer

$ df1 -hT
Filesystem                        Type   Size  Used Avail Use% Mounted on
/dev/disk1                        hfs    465G  302G  164G  65% /
/dev/disk2                        hfs    512M  296M  217M  58% /Volumes/Packer

$ df1 -hT .
Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/disk1     hfs   465G  302G  164G  65% /

এর মানে কি

ফাংশনটি আপনি এটি দিয়ে যা কিছু আর্গুমেন্ট এবং পাইপ ( ) আউটপুটটি পাইপ দেয় যা প্যাটার্ন স্পেসের স্বয়ংক্রিয় মুদ্রণ দমন করতে অনুরোধ করে df1calls বাকী অংশগুলি "স্ক্রিপ্টগুলি" প্রকাশ করে, দুটি আসলে:df|sed-n

  1. স্ক্রিপ্টটি 1pপ্রথম লাইনটি প্রিন্ট করে, যা আমাদের ক্ষেত্রে dfশিরোনাম (আমি psপাইপিংয়ের জন্য একই ব্যবহার করি ),
  2. স্ক্রিপ্টটি /^\//pশুরু হওয়া কোনও লাইনের সাথে মেলে /, তারপরে এটি মুদ্রণ করে
  3. ; 2 টি সেড স্ক্রিপ্টগুলি পৃথক করে

0

আমি ব্যবহার alias df='df -hT -xtmpfs -xdevtmpfs'

dfআজকাল জিএনইউকে লিনাক্সে আসলে ব্যবহারযোগ্য করে তুলতে আপনাকে একটি উপনাম ব্যবহার করতে হবে এমনটি বেশ চুষে ফেলে। কেবলমাত্র "আসল" ফাইল সিস্টেমগুলি (যার অর্থ যাই হোক না কেন) দেখানোর বিকল্প থাকতে হবে।

একযোগে, df -hxtmpfsবেশিরভাগ কৃপণতা নিয়ে যায় এবং কোনও নাম ছাড়াই ব্যবহারযোগ্য হয়। এর চেয়ে খারাপ আর নয় netstat -tulnp... * দীর্ঘশ্বাস *


0

পড়া man mount

মাউন্টগুলি
তালিকাভুক্তকরণ তালিকাটি কেবল পশ্চাদপদ সামঞ্জস্যের জন্য বজায় রাখা হয়। আরও দৃust় এবং কাস্টমাইজযোগ্য আউটপুট ব্যবহারের জন্য findmnt(8), বিশেষত আপনার স্ক্রিপ্টগুলিতে।

আমাকে পছন্দসই আউটপুট পেতে অন্য উপায় দেখিয়েছে।

আমি একটি ফাংশন তৈরি করেছি lsmounts

lsmounts () {
  findmnt -D -t nosquashfs,notmpfs,nodevtmpfs
}

যুক্তিগুলির ব্যাখ্যা:

  • -D: আউটপুট সরবরাহ করুন যেমন আমরা এটি জানি df
  • -t: আপনি দেখতে চান এমন ফাইল সিস্টেমগুলি নির্বাচন করুন। প্রস্তুতি noউল্লিখিত ফাইল সিস্টেমগুলি বাদ দেয়।

সুতরাং আমি কাঙ্ক্ষিত আউটপুট পেতে

SOURCE                       FSTYPE   SIZE   USED  AVAIL USE% TARGET
/dev/mapper/vgubuntu-lvroot  ext4    78,3G  42,5G  31,7G  54% /
/dev/mapper/vgubuntu-lvhome  ext4   284,5G 146,4G 124,5G  51% /home
...
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.