इस मामले type
में बने बैश का कोई लेना-देना नहीं हैtype
, लेकिन बाद में उस पर और अधिक।
थोड़ा सा "टाइप" के
BASH अंतर्निहित type
कमांड आपको कमांड के बारे में जानकारी देता है। इस प्रकार:
$ type type
type is a shell builtin
वाक्य रचना है:
type [-tap] [name ...]
-t
: यदि मिला हो तो ही टाइप करें
-a
: दोनों अंतर्निहित और अन्य, कमांड की सभी घटनाओं को प्रिंट करें।
-p
: उस डिस्क फ़ाइल को प्रिंट करें जिसे कॉल ऑन कमांड, या कुछ भी नहीं किया जाएगा।
यदि हम देखो time
, kill
और cat
एक उदाहरण के रूप:
$ type time kill cat
time is a shell keyword
kill is a shell builtin
cat is /bin/cat
$ type -t time kill cat
keyword
builtin
file
$ type -a time kill cat
time is a shell keyword
time is /usr/bin/time
kill is a shell builtin
kill is /bin/kill
cat is /bin/cat
$ type -ta time kill cat
keyword
file
builtin
file
file
अब, यह निर्दिष्ट करता है कि यदि आप बैश शेल और प्रकार में हैं time some_cmd
, तो बैश बिलिन time
का उपयोग किया जाता है। सिस्टम का उपयोग करने के लिए time
आप कर सकते हैं/usr/bin/time some_cmd
।
एक तरीका अक्सर यह सुनिश्चित करने के लिए उपयोग किया जाता है कि सिस्टम, और अंतर्निहित नहीं, कमांड का उपयोग करके किया जाता है which
।
tt=$(which time)
और फिर $tt
कॉल सिस्टम का उपयोग करें time
।
प्रश्न में आज्ञा
इस मामले -type
में कमांड के लिए एक विकल्प है find
। विकल्प एक तर्क लेता है जिसके द्वारा इकाई का प्रकार निर्दिष्ट किया जाता है। उदाहरण
find . -type f # File
find . -type d # Directory
और भी हैं, man find
बाकी की जाँच करें ।
आप कर सकते हैं विशिष्ट विकल्प की खोज करने के लिए (आदमी में)
/ ^ \ S * प्रकारEnter
तब का उपयोग n
के लिए अगले आप इसे खोजने के लिए जब तक।
शेल कमांड के बारे में थोड़ा
यह व्यक्तिगत व्याख्या का एक सा है।
इस विशिष्ट मामले में कुछ चीजें ध्यान देने योग्य हैं, वे हैं कमांड, विकल्प, तर्क और पाइप।
यह कुछ हद तक उपयोग किया जाता है, लेकिन मेरी शब्दावली में हम संक्षेप में है:
- कमांड: एक प्रोग्राम या बिल्ट-इन ।
- पैरामीटर: कमांड शब्द के बाद एक इकाई।
- विकल्प: एक वैकल्पिक पैरामीटर।
- तर्क: एक आवश्यक पैरामीटर।
कमांड विनिर्देशन में वर्ग कोष्ठक विकल्पों को निर्दिष्ट करने के लिए उपयोग किया जाता है और, वैकल्पिक रूप से कम / अधिक तब, तर्क निर्दिष्ट करने के लिए उपयोग किया जाता है। इस प्रकार:
foo [-abs] [-t <bar>] <file> ...
foo [-abs] [-t bar] file ...
देता है -a
-b
और -s
के रूप में वैकल्पिक पैरामीटर, और file
एक एक की आवश्यकता है।
-t
वैकल्पिक है, लेकिन यदि निर्दिष्ट आवश्यक तर्क लेता है bar
। डॉट्स यह दर्शाते हैं कि यह कई फाइलें ले सकता है।
यह कोई सटीक विनिर्देश नहीं है, और यह सुनिश्चित करने के लिए अक्सर man
या help
आवश्यक है।
तर्क विकल्पों और इनपुट की स्थिति को अक्सर मिलाया जा सकता है, लेकिन आमतौर पर स्थिति आधारित दृष्टिकोण रखने के लिए सबसे अच्छा है क्योंकि कुछ सिस्टम तर्कों की मिश्रित स्थिति को संभाल नहीं पाते हैं। उदाहरण के तौर पे:
chmod -R nick 722 foo
chmod nick 722 foo -R
दोनों कुछ प्रणालियों पर काम करते हैं, जबकि बाद वाले दूसरे पर नहीं।
आपकी सटीक कमांड में सभी पैरामीटर हैं find
- इस प्रकार यदि आप किसी संपत्ति के बारे में आश्चर्य करते हैं तो man find
देखने के लिए सही जगह है। ऐसे मामलों में जहां आपको शेल आदि के लिए मैन पेज देखने की आवश्यकता होती है, जैसे:
find . $(some command)
find . `some command`
find . $some_var
find . -type f -exec some_command {} \;
find . -type f | some_command
...
-exec
एक विशेष एक जहाँ है -exec some_command {} \;
सभी मापदंडों को दी हैं find
, लेकिन some_command {} \;
भाग के भीतर, विस्तार किया जाता है find
करने के लिए some_command string_of_found_entity
।
आगे
- के हवाले
- विस्तार
- कमांड प्रतिस्थापन
- और इतना अधिक
आपको यह उपयोगी लग सकता है ।
type
अंतर्निहित आदेश द्वारा नहीं किया जाताfind
। कुछ और-type
करने का विकल्पfind
। देखेंhelp type
औरman find
अपने जवाब पाने के लिए।