सवाल ls-command: मेगाबाइट्स में फ़ाइल आकार को कैसे प्रदर्शित करें?


यूनिक्स (Tru64) में, मैं इसे कैसे बना सकता हूं ls आदेश मेगाबाइट्स में फ़ाइल आकार दिखाता है? वर्तमान में मैं इसे निम्नलिखित का उपयोग करके बाइट्स में दिखाने में सक्षम हूं:

ls -la

151
2017-09-20 11:20


मूल




जवाब:


शायद -h आपके लिए पर्याप्त है

-h
  जब -l विकल्प के साथ प्रयोग किया जाता है, इकाई प्रत्यय का उपयोग करें: बाइट, किलोबाइट,               मेगाबाइट, गीगाबाइट, टेराबाइट और पेटबाइट को कम करने के लिए               आकार के लिए बेस 2 का उपयोग करके तीन या उससे कम अंकों की संख्या।

ls -lah

सामान्य सलाह: उपयोग करें man commandname किसी निश्चित कमांड के मैन्युअल / सहायता को पढ़ने के लिए, उदा। यहाँ man ls


229
2017-09-20 11:22



धन्यवाद, लेकिन -h विकल्प Tru64 यूनिक्स पर मौजूद प्रतीत नहीं होता है।
सामान्य सलाह: जीएनयू उपयोगिता स्थापित करें ... - reinierpost
मुझे आदमी का उपयोग करने के बारे में आपकी युक्ति पसंद है, लेकिन वास्तव में, Google पर खोज करना बहुत समय से मनुष्य का उपयोग करने से बहुत तेज़ है (अब, जब मुझे Google पर यह परिणाम मिला)। - trusktr
Google का जुर्माना और सभी सामान्य संकेतों के लिए, लेकिन आखिरकार मैन पेज सिस्टम / ओएस हैं, यहां तक ​​कि विशिष्ट होस्ट भी होते हैं, आमतौर पर सॉफ़्टवेयर संकलित या स्थापित होने पर बनाया जाता है, और इस प्रकार, आपके विशेष सिस्टम पर सॉफ़्टवेयर के लिए आधिकारिक। - Nevin Williams
बस पूर्ण सर्कल आने के लिए, gnu / linux के लिए ऑनलाइन आदमी है: linux.die.net/man - MariusMatutiae


ls --block-size=M मेगाबाइट्स में आकार प्रिंट करता है लेकिन 1 एमबी से कम कुछ भी के लिए 1 एमबी भी दिखाता है। मुझे यकीन नहीं है कि यह विकल्प आपके यूनिक्स संस्करण एलएस में स्वीकार्य है, हालांकि।

वास्तव में ls -lh अगर फ़ाइल काफी बड़ी है (वैसे भी वैसे भी: गीगाबाइट्स में आकार प्रिंट करता है) लिनक्स 64 बिट यह काम करता है:>)

एक तरफ नोड पर: du -sh * वर्तमान निर्देशिका में निर्देशिका आकार भी मुद्रित करता है।


32
2017-09-20 12:33



धन्यवाद! मुझे फ़ोल्डर में उपयोग करने और उपयोग करने में लाइव फ़ाइल परिवर्तनों की निगरानी करने की आवश्यकता थी ls -h फ़ाइल 1 जीबी से अधिक बढ़ने के बाद व्यर्थ है, इसलिए मैं इस कमांड को 1 सेकंड लूप में उपयोग करता हूं: while true ; do ls -al --block-size=M ; sleep 1 ; done - ccpizza


आपको उपयोग करना होगा awk आपके लिए गणित करने के लिए:

ls -l | awk 'BEGIN{mega=1048576} $5 >= mega {$5 = $5/mega "MB"} {print}'

यह उन फ़ाइलों के आउटपुट को प्रभावित नहीं करेगा जो छोटे से हैं mega

आपको जिस तरह से मिलान करने के लिए फ़ील्ड नंबर समायोजित करने की आवश्यकता हो सकती है ls बाहर रखा गया है तुम बदल सकते हो mega यदि यह आपकी प्राथमिकता है तो "1000000" तक।

यह संभवतः आप चाहते हैं कि अधिक दशमलव स्थानों को मुद्रित करेगा। आप एक गोल समारोह लागू कर सकते हैं।


15
2017-09-20 13:36



से बहुत कम सुरुचिपूर्ण ls -lh या ls --block-size=M, लेकिन एडब्ल्यूके बहुत उपयोगी है! - Statwonk
मुझे जिस चीज की जरूरत थी। निकटतम एमबी के आसपास के सभी अन्य समाधान, लेकिन यह कुछ दशमलव स्थानों को दिखाता है और आसानी से अनुकूलन योग्य है। - zeroimpl
यह उन प्रणालियों के लिए एक अच्छा समाधान है (AIX - मैं आपको देख रहा हूं) जिसमें -h विकल्प नहीं है। - Buggabill


प्रयत्न ls -shR रिकर्सिव मानव पठनीय प्रारूप के लिए।


14
2017-10-14 08:27



ओपी ने कहा है कि नहीं है -h Tru64 पर, और इस उत्तर पोस्ट करने से पहले दो साल से अधिक ऐसा किया। - α CVn
सोचा उन लोगों की मदद करना मेरी ज़िम्मेदारी है जो एक ही Google खोज के साथ यहां पहुंचते हैं। - Sorter


प्रयत्न ls -lash, यह मानव पठनीय प्रारूप में आकार प्रिंट करता है


6
2017-09-20 11:23





du -sm filename.txt


5
2017-09-20 16:36



यह हमेशा आकार को गोल करता है ... यदि आकार 1 एमबी से कम है तो 500K कहता है, फिर भी यह 1 एम प्रिंट करेगा - AnonGeek


आप भी टाइप कर सकते हैं

du -sh ./*

यह मौजूदा निर्देशिका के तहत सभी फ़ोल्डरों को सूचीबद्ध करेगा, जिसमें मानव-पठनीय प्रारूप शामिल है, जिसमें केबी, एमबी, जीबी में अधिक परिचित फ़ाइल आकार शामिल हैं।


5
2018-04-19 22:57





यदि आप केवल एक विशिष्ट फ़ाइल का आकार चाहते हैं, तो कमांड, पिछले उत्तरों के एक छोटे से extrapolation, है:

एलएस-एसएच फ़ाइल नाम (रों)

-s आकार और के लिए है h मानव पठनीय के लिए है (जैसा कि कुछ समय से ऊपर बताया गया है)।

आउटपुट इस तरह दिखेगा:

753M myfilename

यदि आप फ़ाइल नाम छोड़ देते हैं, तो यह निर्देशिका को सूचीबद्ध करेगा, प्रत्येक फ़ाइल का आकार उसके नाम के बगल में रखेगा - इसके विपरीत नहीं ls -la जब कोई फ़ाइल नाम तर्क के साथ बुलाया जाता है।

उम्मीद है की यह मदद करेगा।


2
2018-06-13 07:36



यह प्रश्न Tru64 यूनिक्स के बारे में है, और ओपी ने लगभग पांच साल पहले कहा था कि -h विकल्प में मौजूद नहीं है ls उस प्रणाली पर। - G-Man


ls -l --block-size=MB 

के लिए --block-size पैरामीटर:

  • उपयोग MB 10 ^ 6 के लिए
  • बस उपयोग करें M 2 ^ 20 के लिए

0
2017-07-24 18:25



ध्यान दें कि यह कोई दशमलव स्थान नहीं दिखाएगा। इसके अलावा, 0 केबी से ऊपर कुछ भी नहीं, लेकिन न ही 1 एमबी से अधिक दिखाया जाएगा 1MB। इस कारण से मैंने पाया ls -l --block-size=kB अधिक उपयोगी होने के लिए। - DaAwesomeP


यदि आप फ़ाइल आकार में रुचि रखते हैं, और आपको इसका उपयोग करने की आवश्यकता नहीं है ls आदेश, निम्न कोशिश करें:

# echo "Hello World" > file.txt
# ls -l file.txt 
-rw-r--r-- 1 user user 12 Mar 10 11:32 file.txt
# stat --printf='%s\n' file.txt
12

यह कुछ भी पार्स करने की आवश्यकता के बिना फ़ाइल आकार प्रिंट करेगा।


0
2018-03-10 17:34



ओपी एमबी में आकार चाहते हैं, शायद एक स्टेट विकल्प मानव पठनीय रूप में आकार का उत्पादन करेगा? - Archemar
आह, वह मेरा गूंगा था। इसे पकड़ने के लिए धन्यवाद। जहां तक ​​मुझे पता है कि --printf या किसी अन्य विकल्प का उपयोग कर आकार में हेरफेर करने का विकल्प नहीं है। इसे प्रिंटफ और बीसी कमांड-लाइन उपयोगिताओं के संयोजन का उपयोग करने की आवश्यकता होगी। किस मामले में, परेशान क्यों। एलएस और कट / अजीब जल्दी हो जाएगा। - SKN