Bash
लिस्टिंग फ़ाइलें
खोज…
वाक्य - विन्यास
- ls [विकल्प] ... [फ़ाइल] ...
पैरामीटर
विकल्प | विवरण |
---|---|
-a , --all | उन सभी प्रविष्टियों को सूचीबद्ध करें, जिनमें एक बिंदु है |
-A , --almost-all | सभी प्रविष्टियों को छोड़कर सूची दें . और .. |
-c | फ़ाइलों को समय बदलकर सॉर्ट करें |
-d , --directory | सूची निर्देशिका प्रविष्टियाँ |
-h , --human-readable | मानव पठनीय प्रारूप में आकार दिखाएं (यानी K , M ) |
-H | 1024 की बजाय 1000 की शक्तियों के साथ ही ऊपर |
-l | लंबी सूची प्रारूप में सामग्री दिखाएं |
-o | समूह जानकारी के बिना लंबी सूची प्रारूप |
-r , --reverse | रिवर्स ऑर्डर में सामग्री दिखाएं |
-s , --size | ब्लॉकों में प्रत्येक फ़ाइल का आकार प्रिंट करें |
-S | फ़ाइल के आकार के आधार पर छाँटें |
--sort=WORD | किसी शब्द के आधार पर सॉर्ट करें। (अर्थात आकार, संस्करण, स्थिति) |
-t | संशोधन समय के आधार पर छाँटें |
-u | अंतिम पहुँच समय के अनुसार क्रमबद्ध करें |
-v | संस्करण के आधार पर छाँटें |
-1 | प्रति पंक्ति एक फ़ाइल सूचीबद्ध करें |
सूची फ़ाइलें
ls
कमांड डॉटफ़ाइल्स को छोड़कर एक निर्दिष्ट निर्देशिका की सामग्री को सूचीबद्ध करता है। यदि कोई निर्देशिका निर्दिष्ट नहीं है, तो डिफ़ॉल्ट रूप से, वर्तमान निर्देशिका की सामग्री सूचीबद्ध होती है।
सूचीबद्ध फ़ाइलों को वर्णानुक्रम में, डिफ़ॉल्ट रूप से, और स्तंभों में संरेखित किया जाता है यदि वे एक पंक्ति में फिट नहीं होते हैं।
$ ls
apt configs Documents Fonts Music Programming Templates workspace
bin Desktop eclipse git Pictures Public Videos
फ़ाइलों को एक लंबी सूची प्रारूप में सूचीबद्ध करें
ls
कमांड का -l
विकल्प लंबी लिस्टिंग प्रारूप में एक निर्दिष्ट निर्देशिका की सामग्री को प्रिंट करता है। यदि कोई निर्देशिका निर्दिष्ट नहीं है, तो डिफ़ॉल्ट रूप से, वर्तमान निर्देशिका की सामग्री सूचीबद्ध होती है।
ls -l /etc
उदाहरण आउटपुट:
total 1204
drwxr-xr-x 3 root root 4096 Apr 21 03:44 acpi
-rw-r--r-- 1 root root 3028 Apr 21 03:38 adduser.conf
drwxr-xr-x 2 root root 4096 Jun 11 20:42 alternatives
...
आउटपुट पहले total
प्रदर्शित करता है, जो सूचीबद्ध निर्देशिका में सभी फ़ाइलों के ब्लॉक में कुल आकार को इंगित करता है। यह तब सूचीबद्ध निर्देशिका में प्रत्येक फ़ाइल के लिए जानकारी के आठ कॉलम प्रदर्शित करता है। नीचे आउटपुट में प्रत्येक कॉलम का विवरण दिया गया है:
कॉलम नं। | उदाहरण | विवरण |
---|---|---|
1.1 | d | फ़ाइल प्रकार (नीचे दी गई तालिका देखें) |
1.2 | rwxr-xr-x | अनुमति स्ट्रिंग |
2 | 3 | कड़ी की संख्या |
3 | root | मालिक का नाम |
4 | root | मालिक समूह |
5 | 4096 | फ़ाइल आकार बाइट्स में |
6 | Apr 21 03:44 | संशोधन का समय |
7 | acpi | फ़ाइल का नाम |
फाइल का प्रकार
फ़ाइल प्रकार निम्न वर्णों में से किसी एक में हो सकता है।
चरित्र | फाइल का प्रकार |
---|---|
- | नियमित फाइल |
b | विशेष फाइल को ब्लॉक करें |
c | चरित्र विशेष फ़ाइल |
C | उच्च प्रदर्शन ("सन्निहित डेटा") फ़ाइल |
d | निर्देशिका |
D | दरवाजा (सोलारिस में विशेष आईपीसी फ़ाइल 2.5+ केवल) |
l | प्रतीकात्मक लिंक |
M | ऑफ-लाइन ("माइग्रेटेड") फ़ाइल (क्रे DMF) |
n | नेटवर्क विशेष फ़ाइल (HP-UX) |
p | फीफो (नामित पाइप) |
P | पोर्ट (सोलारिस में विशेष प्रणाली फ़ाइल केवल 10+) |
s | सॉकेट |
? | कुछ अन्य फ़ाइल प्रकार |
आकार द्वारा क्रमबद्ध फ़ाइलें सूची
ls
कमांड का -S
विकल्प फाइलों को फ़ाइल आकार के अवरोही क्रम में क्रमबद्ध करता है।
$ ls -l -S ./Fruits
total 444
-rw-rw-rw- 1 root root 295303 Jul 28 19:19 apples.jpg
-rw-rw-rw- 1 root root 102283 Jul 28 19:19 kiwis.jpg
-rw-rw-rw- 1 root root 50197 Jul 28 19:19 bananas.jpg
-r
विकल्प के साथ उपयोग करने पर क्रम क्रम उलट जाता है।
$ ls -l -S -r /Fruits
total 444
-rw-rw-rw- 1 root root 50197 Jul 28 19:19 bananas.jpg
-rw-rw-rw- 1 root root 102283 Jul 28 19:19 kiwis.jpg
-rw-rw-rw- 1 root root 295303 Jul 28 19:19 apples.jpg
`Ls` का उपयोग किए बिना फ़ाइलों की सूची बनाएं
फ़ाइल नाम प्राप्त करने के लिए बैश शेल के फ़ाइल नाम विस्तार और ब्रेस विस्तार क्षमताओं का उपयोग करें:
# display the files and directories that are in the current directory
printf "%s\n" *
# display only the directories in the current directory
printf "%s\n" */
# display only (some) image files
printf "%s\n" *.{gif,jpg,png}
प्रसंस्करण के लिए एक चर में फ़ाइलों की सूची पर कब्जा करने के लिए, आमतौर पर बैश सरणी का उपयोग करना अच्छा होता है:
files=( * )
# iterate over them
for file in "${files[@]}"; do
echo "$file"
done
दस सबसे हाल ही में संशोधित फ़ाइलें सूचीबद्ध करें
निम्नलिखित एक लंबी सूची प्रारूप ( -l
) का उपयोग करके और समय ( -t
) द्वारा क्रमबद्ध वर्तमान निर्देशिका में सबसे हाल ही में संशोधित फ़ाइलों में से दस तक सूचीबद्ध करेगा।
ls -lt | head
सूची सहित सभी फ़ाइलें Dotfiles
एक डॉटफ़ाइल एक फ़ाइल है जिसका नाम a से शुरू होता है .
। ये सामान्य रूप से ls
द्वारा छिपाए जाते हैं और अनुरोध किए जाने तक सूचीबद्ध नहीं होते हैं।
उदाहरण के लिए ls
का निम्न आउटपुट:
$ ls
bin pki
The -a
या --all
विकल्प डॉटफ़ाइल्स सहित सभी फ़ाइलों को सूचीबद्ध करेगा।
$ ls -a
. .ansible .bash_logout .bashrc .lesshst .puppetlabs .viminfo
.. .bash_history .bash_profile bin pki .ssh
-A
या --almost-all
विकल्प डॉटफ़ाइल्स सहित सभी फ़ाइलों को सूचीबद्ध करेगा, लेकिन निहित सूची नहीं देता है .
और ..
ध्यान दें .
वर्तमान निर्देशिका है और ..
मूल निर्देशिका है।
$ ls -A
.ansible .bash_logout .bashrc .lesshst .puppetlabs .viminfo
.bash_history .bash_profile bin pki .ssh
ट्री-लाइक फॉर्मेट में फाइलों को सूचीबद्ध करें
tree
कमांड एक ट्री-जैसे प्रारूप में एक निर्दिष्ट निर्देशिका की सामग्री को सूचीबद्ध करता है। यदि कोई निर्देशिका निर्दिष्ट नहीं है, तो डिफ़ॉल्ट रूप से, वर्तमान निर्देशिका की सामग्री सूचीबद्ध होती है।
उदाहरण आउटपुट:
$ tree /tmp
/tmp
├── 5037
├── adb.log
└── evince-20965
└── image.FPWTJY.png
केवल सूची निर्देशिका के लिए डिस्प्ले डेप्थ और -d
विकल्प को सीमित करने के लिए tree
कमांड के -L
विकल्प का उपयोग करें।
उदाहरण आउटपुट:
$ tree -L 1 -d /tmp
/tmp
└── evince-20965