जवाबों:
ls
फ़ाइलों के लिए कमांड का उपयोग करें और du
निर्देशिकाओं के लिए कमांड का उपयोग करें ।
फ़ाइल आकार की जाँच करना
ls -l filename #Displays Size of the specified file
ls -l * #Displays Size of All the files in the current directory
ls -al * #Displays Size of All the files including hidden files in the current directory
ls -al dir/ #Displays Size of All the files including hidden files in the 'dir' directory
ls
कमांड निर्देशिकाओं के वास्तविक आकार ( क्यों? ) को सूचीबद्ध नहीं करेगा । इसलिए, हम du
इस उद्देश्य के लिए उपयोग करते हैं।
निर्देशिका आकारों की जाँच करना
du -sh directory_name #Gives you the summarized(-s) size of the directory in human readable(-h) format
du -bsh * #Gives you the apparent(-b) summarized(-s) size of all the files and directories in the current directory in human readable(-h) format
भी शामिल है -h
ऊपर बताए गए आदेशों में से किसी में (पूर्व के लिए: विकल्प ls -lh *
या du -sh
) आप मानव पठनीय प्रारूप में आकार दे देंगे ( kb
, mb
, gb
, ...)
अधिक जानकारी के लिए देखें man ls
औरman du
du
कमांड फ़ाइल के डिस्क उपयोग को दिखाता है, जो फ़ाइल के वास्तविक आकार से बड़ा हो सकता है। आप du -d
वास्तविक आकार प्राप्त करने के लिए उपयोग कर सकते हैं ls
। अधिक जानकारी: unix.stackexchange.com/a/106278/155224
नहीं है du
आदेश।
एक निर्देशिका और / या फ़ाइल का आकार:
$ du -sh .bashrc /tmp
--apparent-size
कमांड लाइन स्विच ls
वास्तविक आकार के उपयोग के बजाय स्पष्ट आकार (क्या दिखाता है) को मापता है ।
-h
ध्वज को आपको क्या करना चाहिए: मानव पठनीय प्रारूप में प्रिंट आकार (उदाहरण के लिए, 1K 234M 2G)
du
है , यदि कोई फ़ाइल बहुत छोटी है (यानी 2140 बाइट्स) "du" का आउटपुट (मेरे मामले में) 4KB है, क्योंकि यह क्लस्टर का आकार है
--apparent-size
तब उपयोग करें ।
du -hs *
वर्तमान निर्देशिका में सभी फ़ाइलों और निर्देशिकाओं का आकार देखना पसंद है।
आप उपयोग कर सकते हैं:
ls -lh
इस आदेश का उपयोग करके आप फ़ाइलों की निर्देशिका और वास्तविक स्थान की स्पष्ट जगह और प्रत्येक के आकार और निर्माण की तारीख के अलावा प्रदर्शित फ़ाइलों के नामों का विवरण देखेंगे।
ls -l
मेटाडेटा सहित u फ़ाइल का आकार देगा? के रूप में यह एक फ़ाइल है कि मैं के साथ की कोशिश की के लिए थोड़ा 4kb बड़ा लगता है
MB में फ़ाइल का आकार
ls -l --b=M filename | cut -d " " -f5
GB में फ़ाइल का आकार
ls -l --b=G filename | cut -d " " -f5
एक महान ncdu
उपयोगिता भी है - यह सबफ़ोल्डर्स और फ़ाइलों के बारे में विस्तृत जानकारी के साथ निर्देशिका आकार दिखा सकता है।
उबंटू:
$ sudo apt-get install ncdu
बस ncdu [path]
कमांड लाइन में टाइप करें । पथ के विश्लेषण के लिए कुछ सेकंड के बाद, आप कुछ इस तरह देखेंगे:
$ ncdu 1.11 ~ Use the arrow keys to navigate, press ? for help
--- / ---------------------------------------------------------
. 96,1 GiB [##########] /home
. 17,7 GiB [# ] /usr
. 4,5 GiB [ ] /var
1,1 GiB [ ] /lib
732,1 MiB [ ] /opt
. 275,6 MiB [ ] /boot
198,0 MiB [ ] /storage
. 153,5 MiB [ ] /run
. 16,6 MiB [ ] /etc
13,5 MiB [ ] /bin
11,3 MiB [ ] /sbin
. 8,8 MiB [ ] /tmp
. 2,2 MiB [ ] /dev
! 16,0 KiB [ ] /lost+found
8,0 KiB [ ] /media
8,0 KiB [ ] /snap
4,0 KiB [ ] /lib64
e 4,0 KiB [ ] /srv
! 4,0 KiB [ ] /root
e 4,0 KiB [ ] /mnt
e 4,0 KiB [ ] /cdrom
. 0,0 B [ ] /proc
. 0,0 B [ ] /sys
@ 0,0 B [ ] initrd.img.old
@ 0,0 B [ ] initrd.img
@ 0,0 B [ ] vmlinuz.old
@ 0,0 B [ ] vmlinuz
वर्तमान में हाइलाइट किए गए तत्व को हटाएं d, CTRL+ के साथ बाहर निकलेंc
ls -l --block-size = M आपको एक लंबी प्रारूप लिस्टिंग (वास्तव में फ़ाइल का आकार देखने के लिए आवश्यक) और निकटतम MiB तक के गोल फ़ाइल आकार देगा।
यदि आप MiB (2 ^ 20 बाइट्स) इकाइयों के बजाय MB (10 ^ 6 बाइट्स) चाहते हैं, तो इसके बजाय --block-size = MB का उपयोग करें।
यदि आप फ़ाइल के आकार में M प्रत्यय नहीं चाहते हैं, तो आप कुछ का उपयोग कर सकते हैं जैसे --block-size = 1M। यह सुझाव देने के लिए धन्यवाद स्टीफन चेज़लस।
यह ls के लिए मैन पेज में वर्णित है; आदमी ls और खोज के लिए खोजें। यह MB / MiB के अलावा अन्य इकाइयों के लिए भी अनुमति देता है, और इसके लुक से (मैंने यह कोशिश नहीं की) मनमाने ढंग से ब्लॉक आकार के साथ ही (इसलिए आप चाहें तो फ़ाइल का आकार 412-बाइट ब्लॉक की संख्या के रूप में देख सकते हैं। सेवा)।
ध्यान दें कि --block-size का पैरामीटर ओपन ग्रुप के एलएस के शीर्ष पर एक GNU एक्सटेंशन है, इसलिए यदि आपके पास GNU यूजरलैंड नहीं है (जो अधिकांश लिनक्स इंस्टॉलेशन करते हैं) तो यह काम नहीं कर सकता है। जीएनयू कोरुटिल्स 8.5 से एलएस समर्थन करता है - ऊपर वर्णित के अनुसार -ब्लॉक-आकार।
चुने गए निर्देशिका पर जाएं और निष्पादित करें:
$ du -d 1 -h
कहाँ पे:
-d 1 is the depth of the directories
-h is the human-readable option
आप इस तरह देखेंगे:
0 ./proc
8.5M ./run
0 ./sys
56M ./etc
12G ./root
33G ./var
23M ./tmp
3.2G ./usr
154M ./boot
26G ./home
0 ./media
0 ./mnt
421M ./opt
0 ./srv
2.6G ./backups
80G .
यदि आप इसे किसी स्क्रिप्ट में उपयोग कर रहे हैं, तो उपयोग करें stat
।
$ date | tee /tmp/foo
Wed Mar 13 05:36:31 UTC 2019
$ stat -c %s /tmp/foo
29
$ ls -l /tmp/foo
-rw-r--r-- 1 bruno wheel 29 Mar 13 05:36 /tmp/foo
यह आपको बाइट्स में आकार देगा। man stat
अधिक आउटपुट स्वरूप विकल्पों के लिए देखें ।
$ date | tee /tmp/foo
Wed Mar 13 00:54:16 EDT 2019
$ stat -f %z /tmp/foo
29
$ ls -l /tmp/foo
-rw-r--r-- 1 bruno wheel 29 Mar 13 00:54 /tmp/foo
मैं हर समय निम्नलिखित कार्य करता हूं:
$ du -sh backup-lr-May-02-2017-1493723588.tar.gz
ध्यान दें:
-s, --summarize
display only a total for each argument
-h, --human-readable
print sizes in human readable format (e.g., 1K 234M 2G)
निर्देशिका का कुल आकार या फ़ाइल उपयोग के कुल आकार को प्राप्त करने के लिए,
du -csh <directory or filename*> | grep total
उपयोग -S तर्क के साथ ls कमांड का : [रूट @ hots19 आदि] # ls -lh
h: मानव पठनीय के लिए।
Exemple:
[root@CIEYY1Z3 etc]# ls -lh
total 1.4M
-rw-r--r--. 1 root root 44M Sep 15 2015 adjtime
-rw-r--r--. 1 root root 1.5K Jun 7 2013 aliases
-rw-r--r-- 1 root root 12K Nov 25 2015 aliases.db
drwxr-xr-x. 2 root root 4.0K Jan 11 2018 alternatives
-rw-------. 1 root root 541 Jul 8 2014 anacrontab
-rw-r--r--. 1 root root 55M Sep 16 2014 asound.conf
-rw-r--r--. 1 root root 1G Oct 6 2014 at.deny
मैं खुद एक उबंटू 16.04 उपयोगकर्ता हूं और मुझे लगता है कि ll
निर्देशिका की सामग्री को देखने के लिए कमांड सबसे आसान तरीका है। मैंने देखा है कि सभी लिनक्स वितरण इस कमांड का समर्थन नहीं करते हैं, लेकिन संभवतः वहाँ से प्रत्येक डिस्ट्रो के लिए एक वर्कअराउंड / इंस्टॉलेशन है।
उदाहरण:
user@user-XPS-15-9560:/$ ll
total 188
drwxr-xr-x 27 root root 4096 Jan 26 09:13 ./
drwxr-xr-x 27 root root 4096 Jan 26 09:13 ../
drwxr-xr-x 2 root root 4096 Jan 22 15:13 bin/
drwxr-xr-x 4 root root 12288 Jan 29 11:35 boot/
drwxr-xr-x 2 root root 4096 Sep 3 18:14 cdrom/
drwxr-xr-x 20 root root 4440 Feb 5 08:43 dev/
drwxr-xr-x 153 root root 12288 Feb 2 15:17 etc/
drwxr-xr-x 4 root root 4096 Sep 3 18:15 home/
...
मेरे लिए सबसे बड़ा फायदा यह है कि यह जल्दी और वास्तव में उपयोग करने के लिए सहज है।
अद्यतन: मुझे नहीं पता था कि उबंटू पर यह एक पूर्व-कॉन्फ़िगर किया गया उपनाम है। आप इसे alias ll="ls -la"
कमांड लाइन पर निष्पादित करके या अपनी .bashrc config फाइल में इस प्रविष्टि को जोड़कर आसानी से सेट कर सकते हैं :
sudo nano ~/.bashrc
...add line described above and save file by pressing Ctrl+X and Y...
source ~/.bashrc
बस आपको जरूरत है -l
और --block-size
झंडे की
सभी फ़ाइलों और निर्देशिकाओं का आकार कार्यशील निर्देशिका (MBs में)
ls -l --block-size=M
कार्यशील निर्देशिका (GBs में) के अंतर्गत सभी फ़ाइलों और निर्देशिकाओं का आकार
ls -l --block-size=G
किसी विशिष्ट फ़ाइल या निर्देशिका का आकार
ls -l --block-size=M my_file.txt
ls -l --block-size=M my_dir/
ls --help
-l
एक लंबी सूची प्रारूप का उपयोग करें
--block-size=SIZE
:SIZE
उन्हें मुद्रित करने से पहले पैमाने के आकार ; उदाहरण के लिए,'--block-size=M'
1,048,576 बाइट्स की इकाइयों में प्रिंट करता है; देखने केSIZE
लिए नीचे दिए गए प्रारूप
SIZE
एक पूर्णांक और वैकल्पिक इकाई है (उदाहरण: 10M 10 * 1024 * 1024)। इकाइयाँ K, M, G, T, P, E, Z, Y (1024 की शक्तियाँ) या KB, MB, ... (1000 की शक्तियाँ) हैं।
आपको फ़ाइल आकार और डिस्क उपयोग के बीच अंतर करना होगा । दोनों के बीच मुख्य अंतर इस तथ्य से आता है कि फाइलें "टुकड़ों में कट जाती हैं" और ब्लॉकों में संग्रहीत होती हैं।
आधुनिक ब्लॉक का आकार 4KiB है, इसलिए फाइलें 4KiB के डिस्क स्पेस मल्टीपल का उपयोग करेंगी, भले ही वे कितने भी छोटे हों।
यदि आप कमांड का उपयोग करते हैं तो आप stat
दोनों आकृतियों को एक साथ देख सकते हैं।
stat file.c
यदि आप किसी निर्देशिका के लिए अधिक कॉम्पैक्ट दृश्य चाहते हैं, तो आप उपयोग कर सकते हैं ls -ls
, जो आपको 1KiB इकाइयों में उपयोग देगा।
ls -ls dir
इसके अलावा du
आपको असली डिस्क का उपयोग, 1KiB इकाइयों में, या ध्वज के साथ डट्री देगा-u
।
उदाहरण: 1 बाइट फ़ाइल का उपयोग
$ echo "" > file.c
$ ls -l file.c
-rw-r--r-- 1 nacho nacho 1 Apr 30 20:42 file.c
$ ls -ls file.c
4 -rw-r--r-- 1 nacho nacho 1 Apr 30 20:42 file.c
$ du file.c
4 file.c
$ dutree file.c
[ file.c 1 B ]
$ dutree -u file.c
[ file.c 4.00 KiB ]
$ stat file.c
File: file.c
Size: 1 Blocks: 8 IO Block: 4096 regular file
Device: 2fh/47d Inode: 2185244 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 1000/ nacho) Gid: ( 1000/ nacho)
Access: 2018-04-30 20:41:58.002124411 +0200
Modify: 2018-04-30 20:42:24.835458383 +0200
Change: 2018-04-30 20:42:24.835458383 +0200
Birth: -
इसके अलावा, आधुनिक फाइल सिस्टम में हमारे पास स्नैपशॉट, विरल फाइलें ( उनमें छेद वाली फाइलें ) हो सकती हैं जो स्थिति को और जटिल बनाती हैं।
आप इस लेख में अधिक विवरण देख सकते हैं: लिनक्स में फ़ाइल का आकार समझना
आप ncdu
यहां डिस्क उपयोग विश्लेषक का उपयोग कर सकते हैं । यह एक ncurses इंटरफ़ेस में फ़ाइलों और निर्देशिकाओं के आकार को प्रदर्शित करता है। आप प्रत्येक निर्देशिका में नेविगेट कर सकते हैं और एक ही इंटरफ़ेस से फ़ाइलें आकार देख सकते हैं।
स्थापित करने के लिए
$ sudo apt-get install ncdu
विश्लेषण करना
$ ncdu <directory>
ls
किसी निर्देशिका की सभी सामग्रियों का कुल आकार आपको नहीं दिखाएगा।