फाइल करने के लिए वर्तमान टर्मिनल स्क्रॉलबैक सेव करें?


24

मैं इसका उत्तर ढूंढ रहा हूं और ऐसा कुछ भी नहीं पा रहा हूं जिससे मुझे लगे कि यह संभव नहीं है लेकिन ...

क्या वर्तमान ग्नोम टर्मिनल स्क्रॉलबैक बफ़र को किसी फ़ाइल में सहेजना संभव है?

मुझे पता है कि मैं command > output.txtएक फ़ाइल में सभी आउटपुट को रीडायरेक्ट करने के लिए, या command | tee output.txtआउटपुट को टर्मिनल के साथ-साथ एक फ़ाइल में विभाजित करने के लिए कर सकता हूं । मैं जो करने की कोशिश कर रहा हूं वह इस तथ्य के बाद कब्जा कर रहा है। मैं वर्तमान टर्मिनल टैब की स्क्रॉलबैक सामग्री को फ़ाइल में सहेजना चाहता हूं।


kittyएक टर्मिनल प्रोग्राम है जो यह कर सकता है, दुर्भाग्य से फोंट भयानक दिखते हैं (कोई
सबपिक्सल

धन्यवाद, @jberryman जानकार अच्छा लगा।
कार्ल विल्बर

जवाबों:


37

आसपास खेलने के बाद मुझे पता चला कि आप कर सकते हैं:

  • triple-click अंतिम पंक्ति
  • मारो shift + home
  • shift + click पहली पंक्ति
  • कॉपी ctrl + shift + c(या right-click> 'कॉपी')

अब इसे एक टेक्स्ट फ़ाइल में पेस्ट करें ... या, xselआप अपने क्लिपबोर्ड को एक नई फ़ाइल में खोल सकते हैं, बस एक नया टैब खोलें।

xsel -o > out.txt

(स्थापित करने के लिए xselकरते हैं sudo apt-get install xsel)


5
हाइलाइटिंग को और अधिक आसानी से किया जा सकता है: Edit-> Select All
egmont

3
यह एक शानदार उत्तर है क्योंकि यह आपको एहसास कराता है कि आप इसका उपयोग कर सकते हैं triple-click the last lineऔर shift + home or the scrollbarआउटपुट की शुरुआत के लिए सटीक स्थान पर जा सकते हैं।
शेफ फिरौन

2
चेतावनी: इसे एक बड़े स्कोलबैक (कई मेगाबाइट) के साथ आज़माएं क्योंकि यह एक्स (मेरे साथ हुआ) को लटका सकता है।
केविन कॉक्स

कई मेगाबाइट के साथ, धीमी प्रसंस्करण की उम्मीद की जानी है। धैर्य रखें और कंप्यूटर को काम करने दें। "इसे एक सेकंड दो! यह अंतरिक्ष में जा रहा है! क्या आप इसे अंतरिक्ष से वापस लाने के लिए एक दूसरा दे सकते हैं ?!"
कार्ल विल्बर

मैं सिर्फ उत्पादन पर कब्जा करने के लिए Edit-> Select Allविधि का उपयोग करके एक बड़े स्क्रॉलबैक (एक जोड़े 2TB ड्राइव रातोंरात समर्थन से rsync उत्पादन) की नकल करने की कोशिश की । अब 25-30 मिनट हो चुके हैं और गनोम टर्मिनल अभी भी बंद है। बायोबू का उपयोग करते हुए, मैं यह topदेखने के लिए शुरू करने में सक्षम था कि गनोम टर्मिनल अभी भी चल रहा है (सीपीयू समय बढ़ा रहा है); वर्तमान में 4.176g से अधिक RAM का उपयोग कर रहा है और धीरे-धीरे चढ़ाई कर रहा है। तो, हाँ, एक बहुत बड़ी स्क्रॉलबैक के साथ, यह थोड़ी देर के लिए है। X अभी भी चल रहा है (और Chrome, YouTube, Nautilus, Byobu, आदि) लेकिन Gnome Terminal को एक मिनट की आवश्यकता है। मुझे बेहतर योजना बनानी चाहिए थी।
कार्ल विल्बर

2

scriptकमांड उपयुक्त है जब आप एक टर्मिनल सत्र को एक फ़ाइल में सहेजना चाहते हैं और बाद में प्रदर्शित करते हैं। जब आप कॉल करते हैं तो scriptयह आपके शेल को लॉन्च करता है, और जब आप किया जाता है, तो बस बाहर निकलने के लिए टाइप करें। typescriptजब तक आप अन्यथा निर्दिष्ट नहीं करेंगे तब तक सब कुछ फ़ाइल में होगा ।

उदाहरण के लिए,

xieerqi:$ echo "Hello, Karl Wilbur"
Hello, Karl Wilbur

xieerqi:$ date
2015年 10月 27日 星期二 11:38:15 MDT

xieerqi:$ df
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sda1      115247656 80939384  28430924  75% /
none                   4        0         4   0% /sys/fs/cgroup
udev             2914832        4   2914828   1% /dev
tmpfs             585216     1100    584116   1% /run
none                5120        0      5120   0% /run/lock
none             2926072      328   2925744   1% /run/shm
none              102400       52    102348   1% /run/user

xieerqi:$ exit
Script done, file is typescript
xieerqi@eagle:~$ cat typescript 
Script started on 2015年10月27日 星期二 11时37分55秒

xieerqi:$ echo "Hello, Karl Wilbur"
Hello, Karl Wilbur

xieerqi:$ date
2015年 10月 27日 星期二 11:38:15 MDT

xieerqi:$ df
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sda1      115247656 80939384  28430924  75% /
none                   4        0         4   0% /sys/fs/cgroup
udev             2914832        4   2914828   1% /dev
tmpfs             585216     1100    584116   1% /run
none                5120        0      5120   0% /run/lock
none             2926072      328   2925744   1% /run/shm
none              102400       52    102348   1% /run/user

xieerqi:$ exit

Script done on 2015年10月27日 星期二 11时38分18秒

टाइपपैड फ़ाइल में नियंत्रण वर्ण हो सकते हैं, जैसे कि lsकॉमैंड से, इसलिए cat typescript | col -b > outputfile.txtफ़ाइल में स्वच्छ आउटपुट को रीडायरेक्ट करने के लिए कमांड का उपयोग करें


5
धन्यवाद, लेकिन यह कुछ ऐसा है जिसे आपके टर्मिनल में मूल्यवान जानकारी एकत्र करने से पहले करने की आवश्यकता है । मुझे इस तथ्य के बाद समाधान की आवश्यकता थी।
कार्ल विल्बर

1
हालांकि यह जानना बहुत अच्छा है। मैं इसे भविष्य में एक शॉट दूंगा।
कार्ल विल्बर

@KarlWilbur :) मुझे यकीन है कि आप इसे उपयोगी पाएंगे। मैं अपने प्रोग्रामिंग होमवर्क के लिए इसका बहुत उपयोग करता हूं। वास्तव में TTY कंसोल में स्क्रीन पर क्या है इसे डंप करने का एक तरीका है, लेकिन सूक्ति-टर्मिनल थोड़ा अधिक मुश्किल है
सर्गी कोलोडियाज़नी

@SergiyKolodyazhnyy मैं इसे अपने पायथन स्क्रिप्ट में लागू करने की कोशिश करता हूं, लेकिन मैं "os.system (" बाहर निकलें ") कर रही स्क्रिप्ट से बाहर निकल सकता हूं। हालांकि यह टर्मिनल से बाहर निकलता है और फ़ाइल में आउटपुट सेव करता है।
mkkilic

@mtkilic scriptकमांड ने एक अलग प्रक्रिया शुरू की है, इसलिए आपका अजगर स्क्रिप्ट सबप्रोसेस का माता-पिता होने के कारण बच्चे के बाहर निकलने का इंतजार कर रहा है। यह इंटरएक्टिव सत्रों के लिए अधिक है, लेकिन यदि आप पायथन इंटरप्रेटर में एक सत्र रिकॉर्ड करना चाहते हैं, तो scriptपहले कमांड शुरू करें और दुभाषिया दूसरा लॉन्च करें। कमांड में -cध्वज भी होना चाहिए ताकि आप कॉल कर सकें script -c pythonलेकिन साथ दोहरी जांच करें man script
सर्गी कोलोडियाज़नी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.