जवाबों:
ls
अपने आप में कोई सीधा समकक्ष नहीं है, लेकिन इसकी less
उपयोगिता है, जो अलग-अलग पृष्ठों के रूप में किसी भी कमांड के आउटपुट को स्वरूपित करेगा, लाइन या पेज द्वारा स्क्रॉल करने योग्य:
ls -C | less
जहां -C
ट्रिगर कॉलम प्रदर्शित होता है। का प्रयोग करें lah
(तर्कों के रूप ls -lah
) एक पाने के लिए एल के साथ लाइन प्रदर्शन से ऑफ़लाइन एक प्रदर्शित किया जा रहा ll फ़ाइलें, और (छुपा लोगों में शामिल हैं) ज पठनीय filesizes उमान।
रंगों को ठीक से दिखाने के लिए , आपको --color=always
तर्क को ls
और -R
तर्क को कम * पर जोड़ना होगा :
ls -C --color=always | less -R
यह दिखाता है 'ls -ah --color = always | कम -R '
इसके विपरीत more
, less
आपको आउटपुट के माध्यम से स्क्रॉल करने देगा। यह बहुत बड़ी लिस्टिंग के लिए थोड़ा तेज़ है।
पाइप इस तरह काम करता है:
हर प्रोग्राम में इनपुट और आउटपुट होता है, एक पाइप एक प्रोग्राम (ls) के आउटपुट को दूसरे प्रोग्राम (कम) के इनपुट पर रीडायरेक्ट करता है। और कम बस इनपुट की उम्मीद करता है जो इसे तब प्रारूपित करता है।
एक और पुराने स्कूल के समकक्ष होगा pg
:
ls | pg
आप भी कर सकते हैं
ls | head
या ls | tail
प्रदर्शित करने के लिए केवल उत्पादन के पहले या अंतिम भागwatch "ls"
प्रदर्शन को खुला रखने के लिए उपयोग करें , परिवर्तनों को देखने के लिए इसे हर कुछ सेकंड में अपडेट करेंbanner $(ls)
यदि आप स्क्रीन से बहुत दूर बैठे हैं तो उपयोग करें । (;यदि आपको याद रखने के लिए यह सब बहुत लंबा लगता है, तो आप इसके लिए एक उपनाम सेट कर सकते हैं :
खुला ~/.bash_aliases
एक पाठ संपादक के साथ और इसमें कुछ इस तरह जोड़ें:
alias lsp="ls -ah --color=always | less -R"
(यह एक स्क्रिप्ट है जिसे हर बार एक नया वर्चुअल टर्मिनल शुरू किया जाता है, आपको अपने सभी स्थायी उपनाम सेट करना चाहिए)
अब आप सिर्फ टाइप कर सकते हैं lsp
, या जो भी नाम आप चुनते हैं।
यदि आप अपने उपनाम के लिए आगे तर्क पारित करने में सक्षम होना चाहते हैं , तो हमें इसके बजाय एक फ़ंक्शन को परिभाषित करने की आवश्यकता है :
lsp(){ ls -ah --color=always "$@" | less -R; }
एक समारोह, मुख्य इस तरह लग रही: name(){ commands; };
तर्क, स्वीकार कर सकते हैं $1
, $2
, $3
और इतने पर। $@
साधन "हर तर्क, यदि कोई हो" ।
अब आप की तरह कुछ चला सकते हैं lsp *.py
, lsp -C
, और इतने पर। हम उस बिंदु पर तर्क डालते हैं जहां वे ls में पास हो जाते हैं। हम कम से कम $ * भी डाल सकते थे, अगर यह महत्वपूर्ण आदेश होता। आप सभी ls के तर्कों को man ls
(पढ़ने के लायक) देख सकते हैं ।
*: इसका कारण यह है, कि जब भी आप कुछ पाइप करते हैं, तो यह एक टर्मिनल का पता लगाता है (वास्तव में अन्य कार्यक्रम) रंग प्रदर्शित करने में सक्षम नहीं है। "- रंग = हमेशा" इसको अनदेखा करने के लिए ls मजबूर करता है। -R स्विच स्क्रीन को ठीक से कम करता है, रंगों को ठीक से बचता है।
$*
और $@
ठीक यही काम करो। उनका विस्तार होता है $1 $2 $3 ...
। उद्धरित, तथापि, "$@"
के लिए विस्तारित "$1" "$2" "$3" ...
, जबकि "$*"
करने के लिए फैलता है "$1 $2 $3 ..."
(यह है कि, एक स्ट्रिंग में सभी तर्कों, का पहला वर्ण का उपयोग कर IFS
विभाजक के रूप में)। mywiki.wooledge.org/BashGuide/Parameters