खोज…


वाक्य - विन्यास

  • बिल्ली [विकल्प] ... [फ़ाइल] ...

पैरामीटर

विकल्प विवरण
-n प्रिंट लाइन नंबर
-v LFD और TAB को छोड़कर ^ और M- संकेतन का उपयोग करके गैर-मुद्रण वर्ण दिखाएं
-टी TAB वर्णों को ^ I के रूप में दिखाएं
-इ $ के रूप में लाइनफ़ीड (LF) वर्ण दिखाएं
-इ वही -vE
बी गैर-आउटपुट आउटपुट लाइनें, ओवरराइड्स -n
-ए बराबर -vET
-s बार-बार खाली आउटपुट लाइनों को दबाने, निचोड़ने के लिए संदर्भित करता है

टिप्पणियों

cat दोनों फाइलों और मानक आदानों से पढ़ सकती है और उन्हें मानक आउटपुट तक पहुंचा सकती है

एक फ़ाइल की सामग्री मुद्रण

cat file.txt

एक फ़ाइल की सामग्री को मुद्रित करेगा।

यदि फ़ाइल में गैर-ASCII वर्ण हैं, तो आप उन वर्णों को प्रतीकात्मक रूप से cat -v साथ प्रदर्शित कर सकते हैं। यह उन स्थितियों के लिए काफी उपयोगी हो सकता है जहां नियंत्रण वर्ण अन्यथा अदृश्य होंगे।

cat -v unicode.txt

बहुत बार, इंटरैक्टिव उपयोग के लिए, आप less या more जैसे इंटरैक्टिव पेजर का उपयोग करके बेहतर होते हैं, हालांकि। ( less अधिक से अधिक शक्तिशाली है more अधिक से more बार less उपयोग करने की सलाह दी जाती है।)

less file.txt

कमांड के इनपुट के रूप में फाइल की सामग्री को पास करने के लिए। आमतौर पर बेहतर ( UUOC ) दृष्टिकोण को पुनर्निर्देशन का उपयोग करने के लिए देखा जाता है।

tr A-Z a-z <file.txt   # as an alternative to cat file.txt | tr A-Z a-z

यदि सामग्री को उसके सिरे से पीछे की ओर सूचीबद्ध करने की आवश्यकता होती है, तो कमांड tac का उपयोग किया जा सकता है:

tac file.txt

आप लाइन संख्या के साथ सामग्री मुद्रित करने के लिए चाहते हैं, तो का उपयोग -n साथ cat :

cat -n file.txt

एक फ़ाइल की सामग्री को पूरी तरह से अस्पष्ट बाईट-बाइट रूप में प्रदर्शित करने के लिए, एक हेक्स डंप मानक समाधान है। यह फ़ाइल के बहुत संक्षिप्त स्निपेट्स के लिए अच्छा है, जैसे कि जब आपको सटीक एन्कोडिंग का पता नहीं होता है। मानक हेक्स डंप उपयोगिता od -cH , हालांकि प्रतिनिधित्व थोड़ा बोझिल है; सामान्य प्रतिस्थापन में xxd और hexdump

$ printf 'Hëllö wörld' | xxd
0000000: 48c3 ab6c 6cc3 b620 77c3 b672 6c64       H..ll.. w..rld

आउटपुट के साथ लाइन नंबर प्रदर्शित करें

प्रत्येक पंक्ति से पहले लाइन नंबर प्रिंट करने के लिए --number ध्वज का उपयोग करें। वैकल्पिक रूप से, -n एक ही बात करता है।

$ cat --number file

 1  line 1
 2  line 2
 3
 4  line 4
 5  line 5

गिनती करते समय खाली लाइनों को छोड़ने के लिए --number-nonblank , या बस -b

$ cat -b file

 1  line 1
 2  line 2

 3  line 4
 4  line 5

मानक इनपुट से पढ़ें

cat < file.txt

आउटपुट cat file.txt फ़ाइल के समान है।

printf "first line\nSecond line\n" | cat -n 

इको कमांड से पहले | आउटपुट दो लाइनें। बिल्ली कमांड लाइन नंबरों को जोड़ने के लिए आउटपुट पर कार्य करता है।

कॉन्टेनेट फाइल

यह cat का प्राथमिक उद्देश्य है।

cat file1 file2 file3 > file_all

cat को पाइप लाइन के एक भाग के रूप में फ़ाइलों को समान करने के लिए भी उपयोग किया जा सकता है, जैसे

cat file1 file2 file3 | grep foo

एक फ़ाइल में लिखें

cat >file

यह आपको टर्मिनल पर पाठ लिखने देगा जो फ़ाइल नामक फ़ाइल में सहेजा जाएगा।

cat >>file

वही करेगा, सिवाय इसके कि वह फाइल के अंत में टेक्स्ट को जोड़ देगा।

NB: टर्मिनल पर पाठ लिखने के लिए Ctrl + D (लिनक्स)


यहाँ एक दस्तावेज़ को कमांड लाइन या स्क्रिप्ट में फ़ाइल की सामग्री को इनलाइन करने के लिए इस्तेमाल किया जा सकता है:

cat <<END >file
Hello, World.
END

<< पुनर्निर्देशन प्रतीक के बाद टोकन एक मनमाना स्ट्रिंग है जिसे यहां दस्तावेज़ के अंत को इंगित करने के लिए एक लाइन पर (कोई अग्रणी या अनुगामी व्हाट्सएप के साथ) अकेले होने की आवश्यकता है। आप शेल को कमांड प्रतिस्थापन और चर प्रक्षेप करने से रोकने के लिए उद्धरण जोड़ सकते हैं:

cat <<'fnord'
Nothing in `here` will be $changed
fnord

(उद्धरण के बिना, here एक कमांड के रूप में मार डाला जाएगा, और $changed चर के मूल्य के साथ प्रतिस्थापित किया जाएगा changed -।, या कुछ भी नहीं है अगर यह अपरिभाषित गया था)

गैर मुद्रण योग्य वर्ण दिखाएं

यह देखने के लिए उपयोगी है कि क्या कोई गैर-मुद्रण योग्य वर्ण या गैर-ASCII वर्ण हैं।

जैसे आप है वेब से कोड को कॉपी-पेस्ट किया है, तो आप की तरह उद्धरण हो सकता है मानक के बजाय "

$ cat -v file.txt
$ cat -vE file.txt # Useful in detecting trailing spaces.

जैसे

$ echo '”     ' | cat -vE # echo | will be replaced by actual file.
M-bM-^@M-^]     $

आप cat -A (सभी के लिए ए) का उपयोग करना चाह सकते हैं जो cat -vET बराबर है। यह TAB वर्णों ( ^I रूप में प्रदर्शित), गैर प्रिंट करने योग्य वर्ण और प्रत्येक पंक्ति का अंत प्रदर्शित करेगा:

$ echo '” `' | cat -A
M-bM-^@M-^]^I`$

कॉनटेनटेट gzipped फाइलें

gzip द्वारा gzip फ़ाइलों को सीधे बड़ी gzipped फ़ाइलों में संक्षिप्त किया जा सकता है।

cat file1.gz file2.gz file3.gz > combined.gz

यह gzip की एक गुण है जो इनपुट फ़ाइलों को संक्षिप्त करने और परिणाम को प्राप्त करने की तुलना में कम कुशल है:

cat file1 file2 file3 | gzip > combined.gz

एक पूर्ण प्रदर्शन:

echo 'Hello world!' > hello.txt
echo 'Howdy world!' > howdy.txt
gzip hello.txt 
gzip howdy.txt

cat hello.txt.gz howdy.txt.gz > greetings.txt.gz

gunzip greetings.txt.gz

cat greetings.txt

जिसके परिणामस्वरूप

Hello world!
Howdy world!

ध्यान दें कि greetings.txt.gz txt.gz एक एकल फ़ाइल है और एकल फ़ाइल greeting.txt रूप में विघटित है। इसके विपरीत tar -czf hello.txt howdy.txt > greetings.tar.gz साथ।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow