Ls -F द्वारा प्रदर्शित प्रतीकों का क्या अर्थ है?


61

मैंने देखा कि अगर मैं एक निर्देशिका पर ls -F चलाता हूं, तो कुछ प्रविष्टियों में एक * या @ उनके बाद है।

spuder@ubuntu:~$ ls -F /sbin
acpi_available*   getpcaps*           lvmconf*                 ntfscp*        start-stop-daemon*
agetty*           getty*              lvmdiskscan@             ntfslabel*     status@
alsa*             halt@               lvmdump*                 ntfsresize*    stop@
alsactl*          hdparm*             lvmsadc@    

spuder@ubuntu:~$ ls -F ~
daq-0.6.1/  examples.desktop       noname-cache.lib  snort-2.9.1/   Templates/
Desktop/    jpgraph-1.27.1/        noname.sch        snortfiles/    Ubuntu One/
Documents/  

Ls मैन पेजों के अनुसार

spuder@ubuntu:~$ man ls
...
-F, --classify
  append indicator (one of */=>@|) to entries
...

मुझे लगता है कि @प्रतीकात्मक लिंक का मतलब है,

इन अन्य संकेतकों का क्या मतलब है ( */=>@|)?


2
क्या आपने मैन पेज देखने की सोची है?
mdpc

23
वह रखता है। वास्तव में, उन्होंने मैनपेज का एक अंश पोस्ट किया। lsप्रदर्शित किए गए प्रतीकों के बारे में जानकारी सहित पूर्ण प्रलेखन, ls -Fटेक्सिनफो मैनुअल में है। ( info ls)।

1
एक तरफ ध्यान दें, चूंकि टेक्सिनोफो मैनुअल आम तौर पर अजीब और विदेशी लगता है, यह इन जैसे कार्यों के आसपास रखना आम है infos () { info --vi-keys --subnodes -o - "$@" | less; }:।

1
@EvanTeitelman यह बहुत अच्छी जानकारी है, मैं इसे ध्यान info foo --vi-keysमें रखूंगा । दुर्भाग्य से आपके द्वारा उल्लिखित वाक्यविन्यास मेरे लिए काम नहीं करता है (infos () {जानकारी --vi-keys ...}
स्पूडर

1
@spuder: यह एक फ़ंक्शन है; आपको इसे कॉल करना होगा। infos ls। यह $@हिस्सा फ़ंक्शन के सभी तर्कों को पास करता है info। इस फ़ंक्शन को आप ~/.bashrcबाद में उपयोग के लिए अपनी फ़ाइल में रख सकते हैं।

जवाबों:


67

ls -Fफ़ाइल नाम के लिए प्रतीकों को जोड़ता है। ये प्रतीक फाइलों के बारे में उपयोगी जानकारी दिखाते हैं।

यदि आप चाहते हैं कि यह व्यवहार डिफ़ॉल्ट हो, तो इसे अपने शेल कॉन्फ़िगरेशन में जोड़ें alias ls='ls -F':।


10
वास्तविक आदेश न दें, यह बुरी तरह से लिखी गई स्क्रिप्ट को तोड़ सकता है। मैं एलियास है lएफ और रंग के लिए, और llभी -l के लिए
Ctrl-Alt-delor

Android पर मुझे पूरी तरह से दो कॉलम का आउटपुट मिलता है। मुझे फ़ाइल नाम या निर्देशिका नाम मिलता है और नाम से पहले अगर फ़ाइल है, या "डी" अगर यह एक निर्देशिका है, या "एलडी" है अगर यह एक लिंक है तो एक ऋण है। यह एक आपदा है कि लिनक्स असंगत हैं!
एल्म्यू

1

बस यह जोड़ने के लिए कि मुझे यह जानकारी कैसे मिली। जैसा कि नीचे दिखाया गया है man ls:

पूर्ण दस्तावेज़ीकरण: https://www.gnu.org/software/coreutils/ls या स्थानीय रूप से उपलब्ध: info '(coreutils) ls मंगलाचरण' के माध्यम से

इसके बाद, हम देखते हैं

'-F' '--classify' '--indicator-style = वर्गीकृत करें' '' '' '' '' '' '' '' '' '' '' '' file_ '' अक्षर '' को '' टाइप करें '' टाइप करें। इसके अलावा, नियमित फ़ाइलों के लिए जो निष्पादन योग्य हैं, '*' जोड़ें। फ़ाइल प्रकार संकेतक निर्देशिकाओं के लिए '/' हैं, प्रतीकात्मक लिंक के लिए '@', '' | FIFOs के लिए, '=' सॉकेट्स के लिए, '>' दरवाजों के लिए, और नियमित फाइलों के लिए कुछ भी नहीं। जब तक --dereference- कमांड-लाइन (-H), --dereference (-L), या -dereference-command-line-symlink-to-dir विकल्प निर्दिष्ट नहीं होते हैं, तब तक कमांड लाइन पर सूचीबद्ध प्रतीकात्मक लिंक का पालन न करें।

https://www.gnu.org/software/coreutils/manual/coreutils.html#ls-invocation पर

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.