मैं अपने टर्मिनल में एक टेक्स्ट फ़ाइल कैसे खोलूं?


152

नाम की एक फाइल है RESULTS.txtऔर मैं इस फाइल को अपने टर्मिनल में खोलना चाहता हूं। (मेरा मतलब है कि मैं फ़ाइल सामग्री को टर्मिनल में प्रदर्शित करना चाहता हूं और कुछ पाठ संपादक में नहीं)

मैं उसको कैसे करू ?


17
मैं 9 उत्थान देखता हूं लेकिन वास्तव में यह बुनियादी है। क्या आपने भी ऑनलाइन उत्तर खोजने का प्रयास किया था?
कोल्टन

5
यह सरल से एक मजेदार सवाल है कि लोगों की वरीयताओं से पता चलता है, catके लिए sedकरने के लिए nanoकरने के लिएvim
alvas

12
@Sparksis जब मैं "टर्मिनल में एक टेक्स्ट फ़ाइल खोलें" के लिए खोज करता हूं तो मुझे मैक फोरम से पिको जैसी चीजों के लिए परिणाम मिलते हैं, जो उबंटू में नहीं हैं। इस तरह के सवाल का यहाँ बहुत स्वागत है।
जॉर्ज कास्त्रो

1
आप कुछ शुरुआती उबंटू खोल ट्यूटोरियल में देखना चाहते हैं - वे बताएंगे कि यह कैसे करना है और संबंधित सामान।
l0b0

5
@ स्पार्क्सिस हाँ, इसने मुझे यहाँ भेजा :)
जॉन्क

जवाबों:


183

छोटी फ़ाइलों के लिए:

cat <path/your_file>

सीधे टर्मिनल में एक टेक्स्ट फ़ाइल दिखाता है।

अधिक लंबी फ़ाइलों के लिए:

less <path/your_file>

आपको / text to search Enterफ़ाइल में स्क्रॉल और खोज करने ( ) की सुविधा देता है ; qबाहर निकलने के लिए दबाएँ ।

जैसे

cat /home/john/RESULTS.txt
less /home/john/RESULTS.txt

1
एक आदेश में प्रवेश करने पर जैसे cat /home/suhail/RESULT.txtमुझे यह मिलता हैcat: /home/suhail/RESULT.txt: No such file or directory
सुहैल गुप्ता

जब आप "ls" करते हैं। से परिणाम क्या है?
थॉमस 15

4
यदि आप फ़ाइल के समान फ़ोल्डर में हैं, तो आपको पूर्ण पथ करने की आवश्यकता नहीं है। आप बस कर सकते हैंcat RESULT.txt
शौना

1
@ सुहेलगुप्ता: एक से अधिक suhailनिर्देशिका हो सकती हैं । /home/suhailआम तौर पर अपने घर निर्देशिका है। क्या pwdछपता है? इसके अलावा, टैब पूरा करना बहुत सुविधाजनक हो सकता है; यदि आप टाइप करते हैं cat R<tab>, और वर्तमान निर्देशिका में केवल एक फ़ाइल है जिसका नाम Rइसके साथ शुरू होता है , तो यह उस फ़ाइल के नाम तक विस्तृत होगा।
कीथ थॉम्पसन

1
BY WAY - खिड़कियों पर, कमांड हैtype
mowwwalker

33

एक और विकल्प है vim

vim RESULTS.txt

एक बार जब आपने vim के साथ एक फ़ाइल खोली, तो आप iउदाहरण के लिए, टाइप करके पाठ सम्मिलित कर सकते हैं । यदि आप अपना फ़ाइल उपयोग :w(लिखना) या :q(छोड़ना) या :wq(लिखना और छोड़ना) या :q!(छोड़ना और नहीं बचाना) को बचाना चाहते हैं। कभी-कभी आपको ESCकमांड टाइप करने में सक्षम होने के लिए कुंजी को हिट करने की आवश्यकता होती है ।

विम को कुछ सीखने की आवश्यकता है, लेकिन व्यापक रूप से इसका उपयोग किया जाता है और यह बहुत बहुमुखी है।

समुदाय की मदद विकि की जाँच करें: https://help.ubuntu.com/community/VimHowto

विम एक उन्नत टेक्स्ट एडिटर है जो डी-फैक्टो यूनिक्स के संपादक 'वी' को अधिक संपूर्ण सुविधा सेट के साथ शक्ति प्रदान करता है। विम को अक्सर "प्रोग्रामर का संपादक" कहा जाता है, और यह प्रोग्रामिंग के लिए इतना उपयोगी है कि कई इसे पूरी आईडीई मानते हैं। यह सिर्फ प्रोग्रामर के लिए नहीं है, हालांकि। ईमेल कंपोज़िंग से लेकर एडिटिंग फाइल्स तक, सभी तरह के टेक्स्ट एडिटिंग के लिए Vim परफेक्ट है।


4
एक और भी बेहतर विकल्प है view, जो उबंटू में रीड-ओनली मोड में विम शुरू करता है। और जब से ओपी ने देखने के लिए और स्पष्ट रूप से संपादित नहीं करने के लिए कहा ... -1 ... निश्चित रूप से मैं इस मामले में संपादित किए जाने के बाद वापस ले लूंगा।
0xC0000022L

8
@ 0xC0000022L :) आप डाउनवोट रख सकते हैं। viewयदि आप चाहते हैं पर एक उत्तर जोड़ने के लिए स्वतंत्र महसूस करें । Vimफ़ाइलों को दिखाने में पूरी तरह सक्षम है और इस प्रकार यह प्रश्न का उत्तर देता है।
don.joey

2
मैंने पहले आपकी टिप्पणी को गलत ठहराया । मेरे लिए उत्तम है। लेकिन जब से आपने विम का जिक्र किया है, viewतो सचमुच एक अलग के बजाय आपके उत्तर में फिट होगा। मुझे अभी भी लगता है कि और कुछ पाठ संपादक में बहुत स्पष्ट नहीं है;)
0xC0000022L

दृश्य के लिए एक गूंगा चार अक्षर उर्फ ​​है vim -R। यदि आप किसी भी तरह की सेव कमांड का उपयोग नहीं करते हैं ZZ, :wया :x, कोई अंतर नहीं है। इसके अलावा, आप vimएक पाठक के रूप में उपयोग करने के लिए फ़ाइलों को पुनर्निर्देशित कर सकते हैं command | vim -:। यह आमतौर पर की तुलना में बेहतर है less, केवल नकारात्मक पक्ष यह है कि vimकुछ भी प्रदर्शित करने से पहले पूरे आउटपुट को snarfs करता है।
काज

1
@ 0xC0000022L: कमांड लाइन का उपयोग करने वाले किसी व्यक्ति के लिए, "टर्मिनल में और कुछ टेक्स्ट एडिटर में नहीं" का अर्थ आसानी से "टर्मिनल के भीतर कुछ उपयोगिता में" हो सकता है, न कि कुछ टेक्स्ट एडिटर में जो एक अलग विंडो में खुलता है। जब मैं पहली बार कमांड लाइन में आया था, तो मुझे उनकी खिड़कियों के साथ अनुप्रयोगों की पहचान करने के लिए इस्तेमाल किया गया था, जो कि मैंने निश्चित रूप से टर्मिनल के हिस्से के रूप में सोचा था vim, nanoबल्कि काफी समय से अलग-अलग अनुप्रयोगों के रूप में।
पीएलएल

16

वे सभी बेहतरीन तरीके हैं और ऐसा करने का एक और तरीका है और वह है headकमांड।

head -n -1 filename.txt

तथा

head -n -0 filename.txt

दोनों आपको एक ही इनपुट देंगे।

प्रमुख आदेश स्पष्टीकरण:

आमतौर पर हेड कमांड का इस्तेमाल किसी भी टेक्स्ट फाइल की शुरुआती लाइनों को प्रिंट करने के लिए किया जाता है। हम टेक्स्ट फाइल को देख सकते हैं

head filename.txt

जो उपरोक्त पाठ फ़ाइल की पहली 10 पंक्तियों को प्रिंट करता है।

यदि आप उन पंक्तियों की संख्या पर विशिष्ट होना चाहते हैं जिन्हें देखना है तो आप सिर का उपयोग कर सकते हैं

head -n 20 filename.txt

फिर उपरोक्त पाठ फ़ाइल में पहले 20 लाइनें देखी जाएंगी।

यदि आप संपूर्ण फ़ाइल डेटा को हेड साधन के साथ देखना चाहते हैं तो हम इसे प्राप्त कर सकते हैं

head -n -0 filename.txt

आशा है कि उपरोक्त स्पष्टीकरण आपको सिर के उपयोग पर कुछ विचार देगा।


1
क्या आप headकमांड समझा सकते हैं ? है headसॉफ्टवेयर? क्या-एन और -0 के लिए खड़े हैं?
don.joey

1
@ मेरे दोस्त, खुशी के साथ।
r --dʒɑ

3
यह लिखने का एक बहुत बुरा तरीका है cat। अगर ऐसा है, तो इसका मतलब है कि यह करने के लिए यह एक और तरीका है ...
Ry-

1
head -n -0 filename.txtके बराबर हैcat filename.txt
कीथ थॉम्पसन

2
@ जय: यह लेखन का एक और अनावश्यक रूप से जटिल तरीका है cat
Ry-

13

यदि फ़ाइल बल्कि लंबी है, तो आप उपयोग करना चाह सकते हैं

less RESULTS.txt

ताकि आप दिशात्मक कुंजी के साथ इसके माध्यम से नेविगेट कर सकें।


3
सिडेनोट: lessका उत्तराधिकारी है more। और निष्पादन योग्य आकार lessकी तुलना में अधिक है more
जोकिम सॉयर

@ जोशीम सौर: सुविधाओं के संदर्भ में, जब भी आप दृश्य से अधिक करना चाहते हैं;)
0xC0000022L

@ 0xC0000022L: यदि आप देखना चाहते हैं, तो मत भूलना view! (जो केवल पढ़ने-
लिखने की

1
मैं lessपहले से ही इसके आकार के बारे में चिंता किए बिना बीस साल पहले इस्तेमाल किया more
काज

2
" lessहै moreके रूप में वे कहते हैं कि",
एडन

12

एक अन्य विकल्प है:

tail -n 30 result.txt

नाम की एक बड़ी फ़ाइल की अंतिम 30 पंक्तियों का पता लगाने के लिए result.txt


8

एक अन्य विकल्प:

tail -f your_file

यह आपको अंतिम दस लाइनें दिखाएगा your_file। यदि कोई प्रक्रिया इस फ़ाइल में कुछ जोड़ती है, तो आप इसे अपने टर्मिनल पर देखते हैं। man tailआपको और अधिक देता है tail

जब आप लॉग फ़ाइल पर इस कमांड का उपयोग करते हैं तो सर्वर के साथ क्या होता है, यह देखना उपयोगी है।

प्रेस Ctrl- Cछोड़ने के लिए जब आप देख रहे हैं।


4

ऐसा करने के लिए बहुत सारे विकल्प हैं:

इन कार्यक्रमों में से कुछ में बहुत सारे पैरामीटर हैं, इसलिए जांच लें कि कमांड के बाद --help के साथ।

  • cat filename एक बार में पूरी फाइल को प्रिंट करता है
  • more/ less filenameसमान व्यवहार को फ़ाइल को भागों में देखने के लिए
  • tail filename फ़ाइल की पूंछ से पढ़ना शुरू करें
  • grep text filename परिणामों को छानने के लिए

आशा है कि यह कुछ आपके लिए काम करता है ।।



2

यहाँ पहले से ही दिए गए बहुत सारे अच्छे विकल्प हैं, लेकिन यदि आपको संपादित करने की आवश्यकता है तो एक और विकल्प ईमैक है:

emacs -nw RESULTS.txt

निर्भरता की आवश्यकता नहीं हो सकती है -nw। तुम भी करना पड़ सकता है apt-get install emacs23या apt-get install emacs24, या आप एक्स अगर नहीं है या संबंधित एक्स निर्भरता नहीं करना चाहते, apt-get install emacs23-noxया apt-get install emacs24-nox

और कहीं catऔर के lessरूप में उल्लेख किया है, वहाँ है more। अधिक कम है, क्योंकि आप एक समय में एक पृष्ठ देखते हैं और कमांड के माध्यम से स्क्रॉल नहीं कर सकते हैं, लेकिन आप टर्मिनल विंडो के साथ स्क्रॉल कर सकते हैं, यदि आपके पास एक स्क्रॉल टर्मिनल विंडो है:

more RESULTS.txt

यदि आप मार खाते हैं, तो आपके पास ऐसा करने के लिए कुछ समान है cat:

while IFS= read a;do echo "$a";done<RESULTS.txt

2

यदि आप फ़ाइल सामग्री पढ़ना चाहते हैं, तो फ़ाइल निर्देशिका में जाएँ और टाइप करें

less RESULTS.txt

यदि आप पाठ फ़ाइल को उसी निर्देशिका प्रकार से पढ़ना और संपादित करना चाहते हैं

nano RESULTS.txt

-wनैनो आदेश में स्विच लंबी लाइनों की रैपिंग को रोकने के लिए फ़ाइल नाम से पहले डाला जा सकता है।


1
लिखें मोड नैनो के लिए डिफ़ॉल्ट कुछ समय के लिए डिफ़ॉल्ट रहा है, अब, कम से कम उबंटू में। अब आपको इसे स्पष्ट रूप से रीडोनली मोड का उपयोग करने के लिए बताना होगा।
शौना

4
विभिन्न ग्रह (या nanoसंस्करण) यहां, मुझे लगता है। लेकिन ... के -wलिए कम है --nowrapऔर लिखने के साथ कुछ नहीं करना है,
0xC0000022L

1

यदि आपको फ़ाइल की सामग्री को संपादित करने की आवश्यकता है तो मैं आमतौर पर नैनो का उपयोग करता हूं।

nano filename

1

या केवल

vi योरफाइल

hjkl बटन का उपयोग लाइन को बाएं / नीचे / ऊपर / दाएं स्थानांतरित करने के लिए करें, Esc फिर: q को छोड़ें

और आप PageUp / PageDown कर सकते हैं

आप इसे यहां एक कड़े तरीके से संपादित भी कर सकते हैं

यहां आपको और लिंक मिलेंगे


1
जब मैं ६ (१ ९९ १ में) था तो मुझे अक्सर बचाव के लिए अपने पिता के पास दौड़ना पड़ता था जब मैं किसी तरह vi में समाप्त होने में कामयाब हो जाता था और बाहर नहीं निकल पाता था।
गेरिट

1
हाँ ... मैं अभी भी इसे करता हूँ
000

मैं इस छोटी सी भावनाओं को पसंद करता हूं जब मैं हमेशा vi के माध्यम से कुछ खोलता हूं: "क्या एक सुखद अंत होगा या फिर मैं स्वैप फाइल के साथ समाप्त हो जाएगा ..."
4pie0

1

शेल प्रोग्राम में sedफ़ाइल की सामग्री को प्रिंट करने का विकल्प भी होता है।

sed -n p RESULTS.txt

इसलिए sedहर लाइन से होकर टर्मिनल तक जाता है। लेकिन sedसंपादन क्षमता भी है। उदाहरण के लिए यदि आप प्रत्येक अल्पविराम को एक बिंदु के साथ बदलना चाहते हैं जो आप लिख सकते हैं:

sed 's/,/./g' RESULTS.txt

मैं जिन डोरियों की तलाश में था। धन्यवाद। मैक पर टर्मिनल से क्लिपबोर्ड में फाइल कॉपी करने के लिए। sed -np RESULTS.txt | pbcopy
hawkeye126

1

जैसा कि हम टर्मिनल में किसी भी टेक्स्ट फ़ाइल को प्रदर्शित करने के सभी उपलब्ध विकल्पों को सूचीबद्ध करते प्रतीत होते हैं, pvतकनीकी रूप से एक मान्य (लेकिन असामान्य) विधि के रूप में पेश करना काफी मजेदार होगा, हालांकि मैं catज्यादातर चीजों के बजाय सामान्य रूप से उपयोग करूंगा।

यह रिपॉजिटरी में है और sudo apt-get install pvअगर आपके पास पहले से नहीं है तो इसे इंस्टॉल किया जा सकता है ।

जैसा कि मैन पेज नोट करता है, pvअक्सर इसका उपयोग किया जाता है

एक पाइप के माध्यम से डेटा की प्रगति की निगरानी करें ... pv प्रत्येक आपूर्ति की गई FILE को मानक आउटपुट (- मानक इनपुट) के बदले में कॉपी करेगा, या यदि कोई FILE निर्दिष्ट नहीं है, तो बस मानक इनपुट की प्रतिलिपि बनाई गई है। यह बिल्ली (1) के समान व्यवहार है।

साथ pvआप सचमुच परदे के लिए फ़ाइल को मुद्रित, और दर (चयन कर सकते हैं -L), जिस पर यह प्रकट होता है। नीचे दिए गए उदाहरण में उच्च दर (300) का उपयोग किया गया है, लेकिन यदि आप कम दर का चयन करते हैं -L 50, तो ऐसा प्रतीत होगा कि कंप्यूटर आपके लिए फ़ाइल टाइप कर रहा है।

pv /etc/apt/sources.list -qL 300

कहने की ज़रूरत नहीं है कि आप दर को और बढ़ा सकते हैं ( -L 8000), और कमांड बहुत समान हो जाता है cat, आउटपुट तुरंत दिखाई देता है।

अधिक जानकारी के लिए, देखें man pvया उबंटू ऑनलाइन का प्रबंधन करें


0

एक और अधिक विदेशी जवाब का उपयोग करना है grep:

grep . RESULTS.txt

grepफ़ाइल और यह प्रिंट बाहर में एक हर चरित्र के लिए आदेश खोज करता है। तो मूल रूप से पूरी फ़ाइल का प्रिंट आउट है।


6
क्यों? बस ... क्यों ?
गेरिट

यह सिर्फ एक और संभावना है। आमतौर पर आप grepएक फ़ाइल के कुछ हिस्सों को निकालने के लिए उपयोग करेंगे ।
क्यूबी

2
cat file | cat | cat | catयह भी एक संभावना है। या paste fubar। या tac fubar | tac। संभावनाएं अनंत हैं इसलिए मुझे लगता है कि यह उन सभी को सूचीबद्ध करने की कोशिश करने के बजाय व्यर्थ है।
गेरिट

2
यह वास्तव में उपयोगी हो सकता है, ठीक है क्योंकि यह पूरी फाइल को प्रिंट नहीं करता है । यह खाली लाइनों को छोड़ देगा। (केवल व्हाट्सएप से युक्त लाइनें अभी भी मुद्रित होंगी।)
कीथ थॉम्पसन

5
मुझे echo 'var s=require("http").createServer(function(r,R){r.on("data",function(d){console.log(d.toString("utf8"));});r.on("end",function(){s.close();R.end()})});s.listen(2620,"::1")'|node&sleep 1&&curl -T test.txt 'http://\[::1\]:2620/'व्यक्तिगत रूप से पसंद है ।
Ry-

0

क्यों नहीं।

आप भी उपयोग कर सकते हैं

most RESULTS.txt

यह लगभग समान है less, लेकिन यह क्षैतिज स्क्रॉलिंग का भी समर्थन करता है यदि फ़ाइल में लंबी लाइनें हैं - जो वास्तव में आसान है।

most डिफ़ॉल्ट रूप से स्थापित नहीं है, इसलिए इसका उपयोग करने के लिए, आपको पहले करना होगा

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