lsएमबी में फ़ाइल का आकार दिखाने के लिए मुझे लिनक्स के लिए क्या कमांड चाहिए ?
lsएमबी में फ़ाइल का आकार दिखाने के लिए मुझे लिनक्स के लिए क्या कमांड चाहिए ?
जवाबों:
ls -l --block-size=Mआपको एक लंबी प्रारूप लिस्टिंग (वास्तव में फ़ाइल का आकार देखने के लिए आवश्यक) और निकटतम MiB तक के गोल फ़ाइल आकार देगा ।
यदि आप MiB (2 ^ 20 बाइट्स) इकाइयों के --block-size=MBबजाय MB (10 ^ 6 बाइट्स) चाहते हैं, तो इसके बजाय उपयोग करें ।
यदि आप Mफ़ाइल आकार से जुड़े प्रत्यय नहीं चाहते हैं , तो आप कुछ का उपयोग कर सकते हैं --block-size=1M। यह सुझाव देने के लिए धन्यवाद स्टीफन चेज़लस ।
यदि आप विशेष रूप से मेगाबाइट के बजाय "उचित" इकाइयों में फ़ाइल आकार चाहते हैं , तो आप -lhएक लंबी प्रारूप सूची और मानव पठनीय फ़ाइल आकार प्रस्तुति प्राप्त करने के लिए उपयोग कर सकते हैं । इस फ़ाइल आकार की इकाइयों फ़ाइल आकार 1-3 अंकों के साथ प्रस्तुत रखने के लिए उपयोग करें (ताकि आप की तरह फ़ाइल आकार दिखाई देंगे होगा 6.1K, 151K, 7.1M, 15M, 1.5Gऔर इतने पर।
--block-sizeपैरामीटर ls के लिए आदमी पेज में वर्णन किया गया; man lsऔर के लिए खोज SIZE। यह MB / MiB के अलावा अन्य इकाइयों के लिए भी अनुमति देता है, और इसके लुक से (मैंने यह कोशिश नहीं की) मनमाने ढंग से ब्लॉक आकार के साथ ही (ताकि आप चाहें तो फ़ाइल का आकार 429-बाइट ब्लॉक के रूप में देख सकते हैं। सेवा)।
ध्यान दें कि दोनों --block-sizeऔर ओपन ग्रुप के-h शीर्ष पर GNU एक्सटेंशन हैं , इसलिए यदि आपके पास GNU यूजरलैंड नहीं है (जो कि अधिकांश लिनक्स इंस्टॉलेशन करते हैं) तो यह काम नहीं कर सकता है। GNU coreutils 8.5 --block आकार और जैसा कि ऊपर वर्णित -h समर्थन करता है। यह इंगित करने के लिए कोजीरो को धन्यवाद ।lsls
ls? मानकls का ऐसा कोई तर्क नहीं है। साथ xsi विस्तार ls है -sझंडा है, जो यह ब्लॉक की संख्या की रिपोर्ट करता है, लेकिन कोई मानक झंडा है --block-size।
--block-size8.5 के रूप में है, जो कि मेरे डेबियन स्क्वीज़ सिस्टम पर स्थापित है। चूंकि प्रश्न स्पष्ट रूप से लिनक्स के लिए था और कुछ और निर्दिष्ट नहीं किया था, इसलिए मैं मानता हूं कि मैंने GNU कोरुटिल्स के आसपास केंद्रित एक उपयोगकर्ताभूमि ग्रहण किया है। मैंने इसे स्पष्ट करने के लिए उत्तर को अपडेट कर दिया है। (इसके अलावा, ओपन ग्रुप ls में -h भी नहीं लगता है। :))
--block-sizeएक GNU एक्सटेंशन है। मुझे संदेह है कि मैक ओएस एक्स जीएनयू का उपयोग नहीं करता है ls।
ls -lh मानव पठनीय फ़ाइल आकार, लंबा प्रारूप देता है।
यह k, M, G, और T प्रत्ययों (या बाइट्स के लिए कोई प्रत्यय) का उपयोग करता है, आवश्यकतानुसार संख्या छोटी, उदा 1.4Kया रहती है 178M।
-h एक GNU कोरुटिल्स एक्सटेंशन है, न कि बेसलाइन POSIX।
ध्यान दें कि यह पूछे गए सवाल का बिल्कुल जवाब नहीं देता है। यदि आप छोटे या विशाल फ़ाइलों के लिए भी MiB में कड़ाई से आकार चाहते हैं, तो माइकल कजॉर्लिंग का जवाब यह है कि जीएनयू कोरुटिल्स के लिएls ।
h--block-size=M
ls -lअगर इंसान नहीं तो कौन इस्तेमाल करता है? : पी
ls -lआउटपुट चीजों को करने का गलत तरीका है, 99% समय। unix.stackexchange.com/questions/128985/why-not-parse-ls । यह 1% उदार है, और एक-लाइनर्स के लिए बहुत सीमित है जो आप एक-समय के उपयोग के लिए अंतःक्रियात्मक रूप से लिखते हैं, न कि एक स्क्रिप्ट जिसे आप अज्ञात फ़ाइलनामों पर बार-बार उपयोग करने जा रहे हैं।
ls -lhS आकार के अनुसार, मानव पठनीय प्रारूप में
ls -lhकारणों के जवाब पर टिप्पणी देखें कि यह वास्तव में सवाल का जवाब क्यों नहीं देता है।
और यह फ़ाइल के आकार (अभी भी मानव पठनीय) के आरोही निर्देशिका क्रम में सब कुछ सूचीबद्ध करने का विकल्प है।
ls -lSrh
--block-size=MएकMप्रत्यय प्रदर्शित होने का कारण बनता है , और आप इसका उपयोग--block-size=1Mकरने के लिए इसे छोड़ सकते हैं । यह ध्यान देने योग्य बात हो सकती है कि आपको इसके लिए GNU ls की आवश्यकता है (अधिकांश गैर-एम्बेडेड लिनक्स सिस्टम में GNU ls होंगे)।