आइए मान लें कि एक कमांड है जैसे:
cat /boot/config-3.19.0-32-generic | grep CONFIG_ARCH_DEFCONFIG
आउटपुट इस प्रकार है:
CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
अब, मेरा प्रश्न यह है: क्या कोई कमांड है जो केवल प्रिंट करेगा जो उल्टे अल्पविराम के अंदर है, अर्थात " "
?
और क्या आप कृपया कमांड को थोड़ा समझा सकते हैं? धन्यवाद! अग्रिम रूप से।
cat
, हालांकि इस मामले में बेकार है, भविष्य में आदेशों की पूरी पंक्ति को संपादित करना आसान बना देगा, यदि आप बाद में कुछ बदलना / जोड़ना / हटाना चाहते हैं, तो शायद , tr
या cut
, फ़ाइल नाम खोजने और स्थानांतरित करने की आवश्यकता नहीं है। सुनिश्चित करें कि अन्य कमांड इसका समर्थन करता है, यह पता लगाएं कि इसे कहां रखा जाए, आदि और एक छोटी परीक्षण फ़ाइल के लिए यह केवल 0.002s जोड़ता है। (मैंने शायद अधिक समय इसे टाइप करने में बिताया है, जिससे मैं कभी भीcat
cat
यहाँ मदद क्यों करता है? आप कर सकते हैं grep foo file | tr
या ... | cut
बस के रूप में आसानी से cat file | tr | grep ...
। cat
सिर्फ एक अतिरिक्त पांच अक्षरों, एक अतिरिक्त पाइप और एक अतिरिक्त कार्यक्रम कॉल कहते हैं और ऐसा नहीं करता सरल कुछ भी।
cat
पाइप में उपयोग करना लगभग हमेशा संसाधनों की बर्बादी (AKA UUOC ) है;grep
किसी फ़ाइल से उसका इनपुट पहले से ही पढ़ सकता है (यानीgrep CONFIG_ARCH_DEFCONFIG /boot/config-3.19.0-32-generic
बिल्कुल वही काम करता है, लेकिन 1. यह छोटा है। यह समझना आसान है 3. यह एक अतिरिक्त शेल और एक अतिरिक्त प्रक्रिया को कांटा नहीं करता है)। 99% मामलों में, कई फ़ाइलों को समेटे बिना पाइप के शुरू में बिल्ली का उपयोग करना सिर्फ हानिकारक है। :)