मैं एक निर्देशिका में आकार द्वारा सभी फ़ाइलों को कैसे सॉर्ट कर सकता हूं?


48

मैं अपने मानव पठनीय आकार द्वारा क्रमबद्ध यूनिक्स निर्देशिका में फ़ाइलों को कैसे प्रदर्शित कर सकता हूं, जो सबसे बड़े से सबसे छोटे तक जा रहा है?

मैंने कोशिश की

du -h | sort -V -k 1 

लेकिन यह काम नहीं करता है।


क्या आप स्पष्ट कर सकते हैं कि क्या आप आउटपुट में भी दिखाई देने के लिए उपनिर्देशिका आकारों की उम्मीद कर रहे हैं, और यह भी कि यदि आप फ़ाइलों के स्पष्ट आकार या डिस्क पर उपयोग किए जाने वाले वास्तविक आकार की तलाश कर रहे हैं?
जुलियाग्रे

जवाबों:



33
$ ls -lhS

-l     use a long listing format
-h     with -l, print sizes in human readable format (e.g., 1K 234M 2G)
-S     sort by file size

16

यदि आपके पास उपयुक्त sortसंस्करण है तो आप बस उपयोग कर सकते हैं:

du -h | sort -rh

मेरा है

$ sort --version
sort (GNU coreutils) 8.12

4

ls -Sमेरे लिए OS पर कोई विकल्प नहीं था। निम्नलिखित काम किया:
ls -l | sort -k 5nr
वे "कुंजी" स्तंभ को सॉर्ट करने के लिए निर्दिष्ट करना था (इसे प्राप्त करें, "कुंजी")। ऊपर मैं 5 वें कॉलम पर-k 5nr अर्थ सॉर्ट निर्दिष्ट कर रहा हूं, जिसका आकार (5) अवरोही क्रम (एन) में संख्या (एन) के रूप में मूल्यांकन किया गया है

अधिक जानकारी के लिए संदर्भ सॉर्ट प्रलेखन


4

du -ha | sort -h

du : फ़ाइल डिस्क उपयोग का अनुमान लगाएं।

-h : for human
-a : all files

sort : पाठ की पंक्तियाँ।

-h : for human

man du; man sortअधिक जानकारी के लिए। यह ubuntu v15 पर मेरे लिए काम करता है।


1

मुझे यह मेरे लिए काम करने के लिए मिला:

ls -l | sort -g -k 5 -r

जो (मुझे अभी पता चला है) वही है:

ls -lS

0

इसके विपरीत ls -S, यह ठीक से विरल फाइलों को संभालेगा:

ls -lsh | sort -n | sed 's/^[0-9 ]* //'
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.