ডিরেক্টরিগুলি এবং তাদের মোট আকারের তালিকা করতে এলএস ব্যবহার করে


825

lsকোনও উপ-ডিরেক্টরি এবং এর সমস্ত বিষয়বস্তুর সর্বমোট বিপরীতে ইউনিক্সে ব্যবহার করা কি সাধারণ বিপরীতে 4K(আমি ধরে নিই) কেবল ডিরেক্টরি ফাইলের তালিকা হিসাবে ব্যবহার করা সম্ভব?

total 12K
drwxrwxr-x  6 *** *** 4.0K 2009-06-19 10:10 branches
drwxrwxr-x 13 *** *** 4.0K 2009-06-19 10:52 tags
drwxrwxr-x 16 *** *** 4.0K 2009-06-19 10:02 trunk

ম্যান পেজগুলিকে ঝাঁকুনির পরে আমি খালি আসছি।


4
পরিবর্তে আপনি ডু-এস ব্যবহার করতে চান
বন্দুকগুলি

21
হাঁসের সন্ধানে:alias ducks='du -cksh * | sort -hr | head -n 15'
সেবি

উত্তর:


1547

এর মতো কিছু চেষ্টা করুন:

du -sh *

এর সংক্ষিপ্ত সংস্করণ:

du --summarize --human-readable *

ব্যাখ্যা:

du: D: isk ইউ ঋষি

-s: প্রতিটি নির্দিষ্ট ফাইলের জন্য একটি সংক্ষিপ্তসার প্রদর্শন করুন। (সমান -d 0)

-h: "মানব-পঠনযোগ্য" আউটপুট। ইউনিট প্রত্যয় ব্যবহার করুন: বি ইয়ে, কে ইবিবাইট (কিবি), এম ইবিবিট (এমআইবি), জি ইবিবাইট (জিআইবি), টি ইবিবিট (টিআইবি) এবং পি ইবিবিট (পাইবি)। (BASE2)


55
এছাড়াও -সি (একটি দুর্দান্ত মোট উত্পাদন) চমৎকার।
মেরিডিয়াস

50
ডু - ম্যাক্স-গভীরতা 1 কেবলমাত্র গাছে 1 টির মধ্যে ফাইল / ফোল্ডার মাপ দেখায়, আর কোনও বিশৃঙ্খলা নেই এবং কোনও ফোল্ডারের মধ্যে বড় ফোল্ডারগুলি খুঁজে পাওয়া সহজ।
কাজিনকোচেন

12
কিভাবে লুকানো ফাইল অন্তর্ভুক্ত?
জাকারিয়া ব্র্যাকসা

5
@ জাক-এ জাক আপনি সাধারণ ফাইলের পাশাপাশি *(D)লুকানো ( ডি ওটি) ফাইলগুলির সাথে ম্যাচ করতে ব্যবহার করতে পারেন । ব্যাশ ব্যবহার * .[!.]*করার সময় , আপনি উভয় মিলিয়ে ব্যবহার করতে পারেন ।
সেবি

22
স্পেস কোথায় যায় তার স্পষ্ট চিত্র পেতে du -sch * .[!.]* | sort -rhম্যাক brew install coreutilsdu -sch * .[!.]* | gsort -rh
ডু

319

du -sk * | sort -nফোল্ডারগুলি আকার অনুসারে বাছাই করবে। জায়গা পরিষ্কার করার জন্য সাহায্যকারী যখন ..


11
| tail -rপ্রথমে বৃহত্তম অনুসারে বাছাই করতে একটি যুক্ত করুন ।
ফ্রোগজ 16'14

68
sort -rnবিপরীত সংখ্যায় ক্রমে জিনিস সাজানো। sort -rn | head -n 10এটি যদি আগ্রহী হয় তবে কেবল শীর্ষ কয়েকজনকে দেখায়।
AgileTillIDie

14
sort -rhdu -cksh *এটি মানব-পঠনযোগ্য ইউনিটগুলি সাজানোর সাথে সাথে সুন্দরভাবে কাজ করবে ।
সেবি

দুর্ভাগ্যক্রমে ম্যাকে বাছাই করার জন্য @ সিবি -h একটি বৈধ প্যারামিটার নয়
anon58192932

@ শেবিও -c প্রয়োজনীয় নয়, du -ksh | sort -rnএকই রকম du -cksh | sort -rn। ঠিক যেমন du -kshহিসাবে একই du -cksh
হ্যালো_এখানে_আরডি

108
du -sh * | sort -h

এটি মানব পাঠযোগ্য বিন্যাসে প্রদর্শিত হবে।


6
আরো sort -hএখানে: gnu.org/software/coreutils/manual/... এটা বাছাই জন্য বিশেষ আছে 103K, 102M, 1.1Gইত্যাদি এই আজকাল সিস্টেম অনেক পাওয়া হওয়া উচিত, কিন্তু সকলে নও।
এভেজেনি সার্জিভ

duh -shm * | সাজান -n?
std''OrgnlDave

10
দুর্দান্ত কাজ করে, একটি ছোট সংযোজন du -sh * | sort -rh(বড় ফোল্ডারগুলির তালিকা তৈরি করার জন্য প্রথমে)
আর্টেম

লুকানো ফাইল / ডিরেক্টরি অন্তর্ভুক্ত করতে; du -sh $(ls -A) | sort -h
jmd_dk

55

মানব পাঠযোগ্য বিন্যাসে বর্তমান ডিরেক্টরি থেকে বৃহত্তম ডিরেক্টরি তালিকাভুক্ত করতে:

du -sh * | sort -hr

সারি সংখ্যার সীমাবদ্ধ করার আরও ভাল উপায় হতে পারে

du -sh * | sort -hr | head -n10

আপনি -nতালিকাভুক্ত সারির সংখ্যা সীমাবদ্ধ করতে পতাকাটির প্রত্যয়টি বাড়িয়ে দিতে পারেন

নমুনা:

[~]$ du -sh * | sort -hr
48M app
11M lib
6.7M    Vendor
1.1M    composer.phar
488K    phpcs.phar
488K    phpcbf.phar
72K doc
16K nbproject
8.0K    composer.lock
4.0K    README.md

এটি পড়তে আরও সুবিধাজনক করে তোলে :)


27

ls -lhবিন্যাসে প্রদর্শন করতে , ব্যবহার করুন:

(du -sh ./*; ls -lh --color=no) | awk '{ if($1 == "total") {X = 1} else if (!X) {SIZES[$2] = $1} else { sub($5 "[ ]*", sprintf("%-7s ", SIZES["./" $9]), $0); print $0} }'

ওজক কোড ব্যাখ্যা করেছে:

if($1 == "total") { // Set X when start of ls is detected
  X = 1 
} else if (!X) { // Until X is set, collect the sizes from `du`
  SIZES[$2] = $1
} else {
  // Replace the size on current current line (with alignment)
  sub($5 "[ ]*", sprintf("%-7s ", SIZES["./" $9]), $0); 
  print $0
}

নমুনা আউটপুট:

drwxr-xr-x 2 root     root 4.0K    Feb 12 16:43 cgi-bin
drwxrws--- 6 root     www  20M     Feb 18 11:07 document_root
drwxr-xr-x 3 root     root 1.3M    Feb 18 00:18 icons
drwxrwsr-x 2 localusr www  8.0K    Dec 27 01:23 passwd

এই আউটপুটটি সাজানোর কোনও উপায়? এছাড়াও ম্যাকের যে কারও জন্য আপনি যদি অপসারণ করেন তবে এটি দুর্দান্তভাবে কাজ করে--color=no
anon58192932

@ anon58192932 আপনি আউটপুটটি পাইপ করতে পারেন sort --key=5,5h পঞ্চম কলাম থেকে 'মানব পাঠযোগ্য ইউনিট' বাছাইয়ের জন্য
সেবি

sort: stray character in field spec: invalid field specification 5,5 ঘন্টা ' ফেরত দেয় ` আমি কখনও কখনও
ম্যাক্সকে

@ anon58192932 আপনি ম্যাক সম্পর্কিত একটি প্রশ্ন জিজ্ঞাসা করতে পারেন, আমি নিশ্চিত কেউ আছেন যে সাহায্য করতে পারে। এই প্রশ্নটি জিএনইউ / লিনাক্স হিসাবে ট্যাগ হয়েছে
সেবি

2
এই উত্তরটি ব্যবহার করে রঙ সংরক্ষণের কোনও উপায় আছে?
পাবলো ক্যানসেকো

20

আপনি যে কমান্ডটি চান তা হ'ল 'du -sk' du = "ডিস্ক ব্যবহার"

-K পতাকা আপনাকে ডিস্ক সেক্টরের (512-বাইট ব্লক) ডু ডিফল্টের চেয়ে কিলোবাইটে আউটপুট দেয়।

-S ফ্ল্যাগটি কেবলমাত্র শীর্ষ স্তরের ডিরেক্টরিতে (যেমন, বর্তমান ডিরেক্টরিটি ডিফল্টরূপে, বা কমান্ড লাইনে নির্দিষ্ট ডিরেক্টরিটি) তালিকাভুক্ত করবে। এটি অদ্ভুত যে এই ক্ষেত্রে ls এর বিপরীত আচরণ রয়েছে। ডিফল্টরূপে du আপনাকে প্রতিটি উপ-ডিরেক্টরিতে ডিস্ক ব্যবহার করতে হবে। বিপরীতে, ls কেবলমাত্র নির্দিষ্ট ডিরেক্টরিতে তালিকা ফাইল দেবে। (ls -R আপনাকে পুনরাবৃত্ত আচরণ দেয়))


এটি রুট ডিরেক্টরিতে চেষ্টা করে, এটি এখনও সাব-ডিরেক্টরিকে তালিকাভুক্ত করার চেষ্টা করে, ফলে প্রচুর বার্তা আসে।
নাগেভ

14

আপনার শেল ইনিশিয়ালাইজেশন স্ক্রিপ্টগুলিতে এই শেল ফাংশন ঘোষণাটি রাখুন:

function duls {
    paste <( du -hs -- "$@" | cut -f1 ) <( ls -ld -- "$@" )
}

আমি এটি বলেছি dulsকারণ এটি উভয় থেকে আউটপুট duএবং ls(সেই ক্রমে) দেখায় :

$ duls
210M    drwxr-xr-x  21 kk  staff  714 Jun 15 09:32 .

$ duls *
 36K    -rw-r--r--   1 kk  staff    35147 Jun  9 16:03 COPYING
8.0K    -rw-r--r--   1 kk  staff     6962 Jun  9 16:03 INSTALL
 28K    -rw-r--r--   1 kk  staff    24816 Jun 10 13:26 Makefile
4.0K    -rw-r--r--   1 kk  staff       75 Jun  9 16:03 Makefile.am
 24K    -rw-r--r--   1 kk  staff    24473 Jun 10 13:26 Makefile.in
4.0K    -rw-r--r--   1 kk  staff     1689 Jun  9 16:03 README
120K    -rw-r--r--   1 kk  staff   121585 Jun 10 13:26 aclocal.m4
684K    drwxr-xr-x   7 kk  staff      238 Jun 10 13:26 autom4te.cache
128K    drwxr-xr-x   8 kk  staff      272 Jun  9 16:03 build
 60K    -rw-r--r--   1 kk  staff    60083 Jun 10 13:26 config.log
 36K    -rwxr-xr-x   1 kk  staff    34716 Jun 10 13:26 config.status
264K    -rwxr-xr-x   1 kk  staff   266637 Jun 10 13:26 configure
8.0K    -rw-r--r--   1 kk  staff     4280 Jun 10 13:25 configure.ac
7.0M    drwxr-xr-x   8 kk  staff      272 Jun 10 13:26 doc
2.3M    drwxr-xr-x  28 kk  staff      952 Jun 10 13:26 examples
6.2M    -rw-r--r--   1 kk  staff  6505797 Jun 15 09:32 mrbayes-3.2.7-dev.tar.gz
 11M    drwxr-xr-x  42 kk  staff     1428 Jun 10 13:26 src

$ duls doc
7.0M    drwxr-xr-x  8 kk  staff  272 Jun 10 13:26 doc

$ duls [bM]*
 28K    -rw-r--r--  1 kk  staff  24816 Jun 10 13:26 Makefile
4.0K    -rw-r--r--  1 kk  staff     75 Jun  9 16:03 Makefile.am
 24K    -rw-r--r--  1 kk  staff  24473 Jun 10 13:26 Makefile.in
128K    drwxr-xr-x  8 kk  staff    272 Jun  9 16:03 build

ব্যাখ্যা:

pasteউপযোগ স্পেসিফিকেশন যে আপনার এটা দিতে অনুযায়ী তার ইনপুট থেকে কলাম তৈরি করে। দুটি ইনপুট ফাইল দেওয়া হয়েছে, এটি বিভাজক হিসাবে একটি ট্যাব পাশাপাশি তাদের পাশাপাশি রাখে।

আমরা এটিকে du -hs -- "$@" | cut -f1প্রথম ফাইল হিসাবে আউটপুট দেব (সত্যই ইনপুট স্ট্রিম) এবং ls -ld -- "$@"দ্বিতীয় ফাইল হিসাবে আউটপুট ।

অনুষ্ঠানে "$@" সমস্ত কমান্ড লাইন আর্গুমেন্টের তালিকাতে প্রতিটি ডাবল উদ্ধৃতি মূল্যায়ন করবে। সুতরাং এটি স্পেসগুলি সহ গ্লোব্বিং অক্ষর এবং পাথের নামগুলি বুঝতে পারবে etc.

ডাবল বিয়োগ ( --) কমান্ড লাইন বিকল্পের duএবং শেষের সিগন্যাল করে ls। এই ছাড়া, বলার অপেক্ষা রাখে না duls -lগুলান হবে duএবং জন্য কোন বিকল্প duযে lsনেই গুলান হবে ls(এবং বিকল্প উভয় ইউটিলিটি মধ্যে উপস্থিত একই জিনিস মানে নাও করতে পারে, এবং এটি একটি চমত্কার জগাখিচুড়ি হবে)।

এর cutপরে আউটপুটটির duপ্রথম কলামটি du -hs(আকারগুলি) কেটে ফেলা যায় ।

আমি duআউটপুটটি বাম দিকে রাখার সিদ্ধান্ত নিয়েছি , অন্যথায় আমাকে একটি ডানদিকে ডান কলামটি পরিচালনা করতে হত (ফাইলের নামের দৈর্ঘ্যের কারণে)।

কমান্ডটি কমান্ড লাইন পতাকা গ্রহণ করবে না।

এটি উভয় bashএবং ইন পরীক্ষা করা হয়েছে ksh93। এটি সঙ্গে কাজ করবে না /bin/sh


ওটা সুন্দর. এক লাইনে অনুমতি এবং মাপ
বেন

7

আমি সর্বদা এর পরিবর্তে du -sk( -kকিলোবাইটে ফাইলের আকার দেখায় পতাকা ব্যবহার করি )।


5
এটি একটি মন্তব্য হওয়া উচিত, @ মল্ফ দ্বারা আরও সঠিক এবং আরও ভালভাবে ব্যাখ্যাযোগ্য গ্রহণযোগ্য উত্তরগুলিতে অতিরিক্ত তথ্য সরবরাহ করা উচিত। এটিকে নিজস্ব হিসাবে একটি উত্তর বিবেচনা করা উচিত নয়
কোড_মঙ্ক


7

ncdu ncurses du

এই দুর্দান্ত সিএলআই ইউটিলিটি আপনাকে সহজেই বড় ফাইল এবং ডিরেক্টরিগুলি ইন্টারেক্টিভভাবে খুঁজে পেতে দেয়।

উদাহরণস্বরূপ, একটি সুপরিচিত প্রকল্পের গাছের ভিতরে থেকে আমরা করি:

sudo apt-get install ncdu
ncdu

ফলাফল তার:

এখানে চিত্র বর্ণনা লিখুন

তারপরে, আমি /driversফোল্ডারে যেতে আমার কীবোর্ডের নীচে এবং ডানদিকে প্রবেশ করি এবং আমি দেখতে পাচ্ছি:

এখানে চিত্র বর্ণনা লিখুন

ncdu পুরো গাছের শুরুতে কেবল একবার ফাইলের আকারগুলি পুনরাবৃত্তভাবে গণনা করে, তাই এটি দক্ষ।

"মোট ডিস্কের ব্যবহার" বনাম "আপাত আকার" সমান duএবং আমি এটি এখানে ব্যাখ্যা করেছি: কেন `ডু-এর আউটপুট প্রায়শই` du -b so থেকে আলাদা হয়?

প্রকল্পের হোমপৃষ্ঠা: https://dev.yorhel.nl/ncdu

সম্পর্কিত প্রশ্নাবলী:

উবুন্টু 16.04 এ পরীক্ষিত।

ncdu অ ইন্টারেক্টিভ ব্যবহার

এর আর একটি দুর্দান্ত বৈশিষ্ট্য ncduহ'ল আপনি প্রথমে মাপগুলি একটি JSON ফর্ম্যাটে ফেলে দিতে পারেন এবং পরে সেগুলি পুনরায় ব্যবহার করতে পারেন।

উদাহরণস্বরূপ, ফাইলটি রান উত্পন্ন করতে:

ncdu -o ncdu.json

এবং তারপরে এটি ইন্টারেক্টিভভাবে পরীক্ষা করুন:

ncdu -f ncdu.json

আপনি যদি এনএফএসের মতো খুব বড় এবং ধীর ফাইল সিস্টেমের সাথে কাজ করে থাকেন তবে এটি খুব কার্যকর।

এইভাবে, আপনি কেবল একবার রফতানি করতে পারেন, এতে কয়েক ঘন্টা সময় নিতে পারে এবং তারপরে ফাইলগুলি এক্সপ্লোর করতে, প্রস্থান করতে, আবার অন্বেষণ করা ইত্যাদি can

আউটপুট ফর্ম্যাটটি কেবল জেএসএন, সুতরাং এটি অন্যান্য প্রোগ্রামগুলির সাথে এটি পুনরায় ব্যবহার করাও সহজ, যেমন:

ncdu -o -  | python -m json.tool | less

একটি সাধারণ ডিরেক্টরি ট্রি ডেটার কাঠামো প্রকাশ করে:

[
    1,
    0,
    {
        "progname": "ncdu",
        "progver": "1.12",
        "timestamp": 1562151680
    },
    [
        {
            "asize": 4096,
            "dev": 2065,
            "dsize": 4096,
            "ino": 9838037,
            "name": "/work/linux-kernel-module-cheat/submodules/linux"
        },
        {
            "asize": 1513,
            "dsize": 4096,
            "ino": 9856660,
            "name": "Kbuild"
        },
        [
            {
                "asize": 4096,
                "dsize": 4096,
                "ino": 10101519,
                "name": "net"
            },
            [
                {
                    "asize": 4096,
                    "dsize": 4096,
                    "ino": 11417591,
                    "name": "l2tp"
                },
                {
                    "asize": 48173,
                    "dsize": 49152,
                    "ino": 11418744,
                    "name": "l2tp_core.c"
                },

উবুন্টুতে পরীক্ষিত 18.04।


1
অ্যামেজিং। ভাগ করে নেওয়ার জন্য ধন্যবাদ!
ফ্র্যাঙ্ক ফু

আমি সম্মত হই, এনসিডিইউ হবার উপায় ... তবে আপনি কি জানেন যে জেএসএন ফাইল অনুসন্ধান করা সম্ভব কিনা? অর্থাত কোনও নির্দিষ্ট ফাইল / ফোল্ডারের পুরো পথটি পান।
এফজিভি

1
@ এফজিভি আমার মনে হয় না এনসিডিইউ আউটপুট দিতে পারে, এর একটি সম্ভাবনা জেএসএনকে পার্স করার একটি সাধারণ অজগর স্ক্রিপ্ট হ্যাক করা হবে।
সিরো সান্তিলি 法轮功 病毒 审查 六四 事件


4

এটি আমি পছন্দ করি

আপডেট : আমি আগেরটি পছন্দ করিনি কারণ এটি বর্তমান ডিরেক্টরিতে ফাইল প্রদর্শন করে না, এটি কেবল ডিরেক্টরিগুলি তালিকাভুক্ত করে।

/varউবুন্টুতে উদাহরণস্বরূপ আউটপুট :

sudo du -hDaxd1 /var | sort -h | tail -n10

4.0K    /var/lock
4.0K    /var/run
4.0K    /var/www
12K     /var/spool
3.7M    /var/backups
33M     /var/log
45M     /var/webmin
231M    /var/cache
1.4G    /var/lib
1.7G    /var

3

এগুলি সমস্ত দুর্দান্ত পরামর্শ, তবে আমি যেটি ব্যবহার করি তা হ'ল:

du -ksh * | sort -n -r

-ksh ফাইলগুলি এবং ফোল্ডারগুলি মানব-পঠনযোগ্য ফর্ম্যাটে এবং মেগাবাইট, কিলোবাইট ইত্যাদিতে তালিকাভুক্ত রয়েছে তা নিশ্চিত করে তোলে তারপরে আপনি এগুলি সংখ্যার দিক থেকে বাছাই করুন এবং সাজানটি বিপরীত করুন যাতে এটি বড়টিকে প্রথমে রাখে।

এই কমান্ডের একমাত্র ক্ষতিটি হ'ল কম্পিউটার জানে না যে গিগাবাইট মেগাবাইটের চেয়ে বড় তবে এটি কেবল সংখ্যা অনুসারে বাছাই করবে এবং আপনি প্রায়শই এর মতো তালিকা পাবেন:

120K
12M
4G

শুধু ইউনিট তাকান যত্নশীল।

এই কমান্ডটি ম্যাকের উপরেও কাজ করে (যেখানে sort -hউদাহরণস্বরূপ নেই)।


আপনি যদি আদেশটি -hথেকে পতাকাটি সরিয়ে থাকেন তবে duআপনি সেই ক্ষতিটি কাটাবেন
কার্লোস রিকার্ডো

অথবা আপনি পাশাপাশি সাজানোর -hপরিবর্তে ব্যবহার করতে পারেন -n
সেবি

বা কেবল একটি
গ্রেপ

3
du -S

du এর আরেকটি কার্যকর বিকল্প রয়েছে: ডু-S, --separate-dirs বলার মধ্যে সাব-ডিরেক্টরিগুলির আকার অন্তর্ভুক্ত নয় - কিছু উপলক্ষে সহজ।

উদাহরণ 1 - একটি ডিরেক্টরিতে কেবল ফাইলের আকার দেখায় :

du -Sh  * 
3,1G    10/CR2
280M    10

উদাহরণ 2 - ফাইলের আকার এবং উপ-ডিরেক্টরিগুলি ডিরেক্টরিতে দেখায়:

du -h  * 
3,1G    10/CR2 
3,4G    10



2

আপনি যদি আকারের ফাইলগুলি তুলনা করতে চান তবে কেবল একটি সতর্কতা। du ফাইল সিস্টেম, ব্লকের আকার, ... এর উপর নির্ভর করে বিভিন্ন ফলাফল উত্পাদন করে।

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

echo "[GetFileSize.sh] target directory: \"$1\""

iRetValue=0

uiLength=$(expr length "$1")
if [ $uiLength -lt 2 ]; then
  echo "[GetFileSize.sh] invalid target directory: \"$1\" - exiting!"
  iRetValue=-1
else
  echo "[GetFileSize.sh] computing size of files..."

  # use ls to compute total size of all files - skip directories as they may
  # show different sizes, depending on block size of target disk / file system
  uiTotalSize=$(ls -l -R $1 | grep -v ^d | awk '{total+=$5;} END {print total;}')
  uiLength=$(expr length "$uiTotalSize")
  if [ $uiLength -lt 1 ]; then
    uiTotalSize=0
  fi
  echo -e "[GetFileSize.sh] total target file size: \"$uiTotalSize\""

fi

exit "$iRetValue"

1

বর্তমান ডিরেক্টরি ফাইলের ফাইল এবং উপ-ডিরেক্টরি মাপ পুনরাবৃত্তভাবে প্রদর্শন করতে:

du -h .

প্রদর্শন করতে একই আকারের তথ্য কিন্তু ছাড়া যাও recursively তাদের সাব ডিরেক্টরি মুদ্রণ (যা একটি বিশাল তালিকা হতে পারে), শুধু ব্যবহার --max গভীর বিকল্প:

du -h --max-depth=1 .

1

কিছুক্ষণের জন্য, আমি rmবাশ ইন কমান্ডটি ব্যবহার না করে আমার হোম ফোল্ডারে ফাইলগুলি মুছতে নটিলাস (আরএইচইএল 6.0 এর জিনোম ডেস্কটপে) ব্যবহার করেছি । ফলস্বরূপ, মোট আকার দ্বারা দেখানো

du -sh

আমি যখন ব্যবহার করি তখন প্রতিটি উপ-ডিরেক্টরিতে ডিস্ক ব্যবহারের যোগ মিলেনি

du -sh *

নটিলাস মুছে ফেলা ফাইলগুলি তার ট্র্যাশ ফোল্ডারে প্রেরণ করে তা বুঝতে আমার কিছুটা সময় লেগেছে, এবং সেই ফোল্ডারটি du -sh *কমান্ডে তালিকাভুক্ত নয় । সুতরাং, কেবল এটি ভাগ করে নিতে চেয়েছিলেন, যদি কেউ একই সমস্যার মুখোমুখি হয়।


1

হুম, সর্বোত্তম উপায় হ'ল এই আদেশটি ব্যবহার করা:

du -h -x / | sort -hr >> /home/log_size.txt

তারপরে আপনি আপনার সমস্ত সার্ভারে সমস্ত আকারের ফোল্ডার পেতে সক্ষম হবেন। সবচেয়ে বড় আকারগুলি খুঁজে পেতে আপনাকে সহায়তা করা সহজ।


1

নিম্নলিখিতটি মনে রাখা সহজ

ls -ltrapR

ডিরেক্টরি ডিরেক্টরি বিষয়বস্তু

-l একটি দীর্ঘ তালিকা বিন্যাস ব্যবহার করুন

-t পরিবর্তনের সময় অনুসারে বাছাই করুন, সর্বপ্রথম নতুন

-r, - বাছাইয়ের সময় বিপরীত ক্রম order

-এ, - সমস্ত এন্ট্রি দিয়ে শুরু করবেন না।

-p, --indicator-style = ডিরেক্টরিতে স্ল্যাশ সংযোজন / সূচক

-আর, - পুনরাবৃত্তির তালিকা অনুসারে সাব-ডিরেক্টরী

https://explainshell.com/explain?cmd=ls+-ltrapR


1

আপনি sizeযে ডিরেক্টরিগুলি উপরে তালিকাভুক্ত করতে চান তার উপর যদি আপনি আরও নিয়ন্ত্রণ চান তবে আপনি threshold( -t) স্যুইচটি এইভাবে ব্যবহার করতে পারেন :

$ du -ht 1000000000 | sort --reverse

du- disk uঋষি
h - মানব পাঠযোগ্য বিন্যাসে
t - থ্রেশহোল্ড আকার

এখানে, আমরা সমস্ত ডিরেক্টরি তালিকাবদ্ধ করতে চাই যা আকার 1GB এর চেয়ে বড়।

$ du -ht 1G | sort --reverse

ব্যাখ্যা :

উইকিতে বর্ণিত ইউনিটগুলি নিম্নলিখিত:

কে, এম, জি, টি, পি, ই, জেড, ওয়াই (1024 পাওয়ার) বা
কেবি, এমবি, জিবি, টিবি, পিবি, ইবি, জেডবি, ওয়াইবি (1000 এর শক্তি)।


0

আমি মার্টিন উইল্ডের বর্ণনার অনুরূপ একটি ইস্যুতে দৌড়েছি, আমার ক্ষেত্রে আরএসসিএনএসের সাথে মিরর করার পরে দুটি ডিরেক্টরি আলাদা আলাদা সার্ভারে একই ডিরেক্টরিকে তুলনা করা।

স্ক্রিপ্ট ব্যবহার না করে আমি যুক্ত করেছিলাম -b পতাকাটিdu যা আকারকে বাইটে গণনা করা হয় এবং যতক্ষণ পর্যন্ত আমি দুটি সার্ভারের পার্থক্যগুলি নির্মূল করতে পারি তা নির্ধারণ করতে পারি। আপনি এখনও -s -hএকটি বোধগম্য আউটপুট পেতে ব্যবহার করতে পারেন ।


0

.bashrc এর মতো init স্ক্রিপ্টে রাখুন ... প্রয়োজন অনুসারে ডিএফ সামঞ্জস্য করুন।

duh() {
  # shows disk utilization for a path and depth level
  path="${1:-$PWD}"
  level="${2:-0}"
  du "$path" -h --max-depth="$level"
}

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.