Terminal.app से संपूर्ण `man` पेज के सभी पाठ कॉपी करें


20

मैं एक बहुत लंबे आदमी पृष्ठ ( man ssh) पढ़ रहा हूं । मैं पाठ-संपादक में अधिक सुविधाजनक पढ़ने के लिए उस सभी पाठ को सहेजना चाहता हूं।

दुर्भाग्य से, दोनों में से किसी एक को चुनना:

  • संपादित करें → सभी का चयन करें → कॉपी करें

  • शैल → निर्यात पाठ के रूप में ...

केवल पाठ से भरे स्क्रीन को बचाने में परिणाम होता है, न कि सभी पाठ जो स्क्रॉल करते हैं।

मैं पूरे manपृष्ठ का पाठ कैसे निकालूं ?


एक निशुल्क 3 पार्टी ऐप मैन रीडर है। सभी संभावित मैन पेजों के बाईं ओर एक सूची के साथ एक विंडो खोलता है। जब आप किसी एक का चयन करते हैं तो वह मध्य फलक में मौजूद सामग्री को प्रिंट करता है। बहुत अच्छा।
JMH

जवाबों:


25

आप क्लिपबोर्ड पर प्लेन टेक्स्ट को पुश कर सकते हैं pbcopy, हमेशा की तरह कहीं भी चिपकाने के लिए।

man ssh | col -b | pbcopy

या उसके बराबर

man -P "col -b | pbcopy" ssh

यदि आप इसे एक उपनाम के रूप में उपयोग करना चाहते हैं, जैसा कि mancp sshदिया गया है:

alias mancp='man -P "col -b | pbcopy"'

HTML / PDF पर जाने के तरीके हैं: क्या मैन पेजों को HTML और / या पीडीएफ फॉर्मेट में बदला जा सकता है?


यदि यह आपके द्वारा किए गए अनुभव के बाद का केवल एक अच्छा अनुभव है, तो आप एक कमांड के चयन पर राइट-क्लिक कर सकते हैं और इसके मैन पेज को एक अलग विंडो / टैब के रूप में खोल सकते हैं, जिसमें सामान्य स्क्रॉलिंग और ⌘F मिलेंगे।

अच्छे पढ़ने वाला

आप यह पसंद कर सकते हैं कि यह किस तरह से टर्मिनल प्राथमिकताएं → प्रोफाइल, मैन पेज प्रोफाइल के तहत मौजूद है जो कि डिफ़ॉल्ट प्रोफाइल में से एक है।
इसमें फ़ॉन्ट परिवार और आकार (यह भी देखें मेनू देखें) और पृष्ठभूमि / अग्रभूमि रंग शामिल हैं।

मैन पेज प्रोफ़ाइल प्राथमिकताएँ


2
मैन पेज के लिए राइट क्लिक iTerm के साथ काम नहीं करता है। मेरी मशीन पर यह टर्मिनल के साथ काम करता है। खिड़की पर टिमटिमाता हुआ मुझे लगता है कि एक सेकंड में 10 बार। मैं इसे क्लिक करके रोक सकता था, लेकिन मुझे नहीं पता था कि मैं कहाँ क्लिक कर रहा था ...
jhh

@jmh एक मोजावे बग, इस अस्थिर होने के लिए लगता है, यहाँ भी समझ में आ गया
nohillside

1
pbcopyऔर pbpasteमैकोस पर उपलब्ध सबसे बड़ी उपयोगिताओं में से दो हैं।
क्रिस्टोफर

1
धन्यवाद! सभी उत्तर जानकारीपूर्ण और उपयोगी हैं, लेकिन मुझे यह स्वीकार करना पड़ा। man ssh | col -b | pbcopyसमाधान सीधे मेरे प्रश्न की बारीकियों संबोधित करते हैं। और फिर, केक पर आइसिंग के रूप में, टर्मिनल.प्प के अंतर्निहित मैन-पेज रीडर ट्रम्प हैं जो आसानी से उपयोग के लिए हैं।
बेसिल बोर्के

आपके समाधान के एक उपयोगी विस्तार में कॉलम की चौड़ाई भी शामिल हो सकती है, और / या इसे सीधे पसंद के टेक्स्ट एडिटर में खोल सकते हैं, जैसे: MANWIDTH=80 MANPAGER="col -bx" man tmutil | open -fa "TextMate"
Asmus

13

यदि आप पूर्वावलोकन में मैन पेज पढ़ना चाहते हैं, तो पीडीएफ के रूप में अच्छी तरह से स्वरूपित, आप चला सकते हैं

man -t ssh | open -f -a Preview

या

man ssh | col -b | open -f -e

TextEdit में पाठ संस्करण खोलने के लिए।


6

manअंतर्निहित colउपयोगिता को कमांड चलाने के मानक आउटपुट को पाइप करें । निम्न कमांड लाइन चलाएँ:

man ssh | col -b > ssh.txt


@ बासिलबूर्क मुझे भी यह अद्भुत लेख मिला ।
निमेश नीमा

4

इन कार्यों के लिए सबसे अच्छा पढ़ने का अनुभव उस के लिए एक समर्पित आवेदन का उपयोग करते समय प्राप्त किया जाता है।

दो उम्मीदवार:

AquaLess

एक्वालेस मैक ओएस एक्स के लिए एक टेक्स्ट पेजर है। यह आपको यूनिक कमांड लाइन टूल्स से टेक्स्ट टेक्स्ट और अधिक महत्वपूर्ण रूप से - टेक्स्ट आउटपुट को ब्राउज़ करने की अनुमति देता है। एक्वालेस कम कमांड के लिए एक कोको प्रतिस्थापन है, जो टर्मिनल विंडो के लिए विवश है। एक्वालेस प्रत्येक पाठ के लिए एक अलग विंडो खोलता है, इसलिए आप पढ़ते समय टर्मिनल में काम कर सकते हैं।

या मनोपन

ManOpen यूनिक्स मैनुअल पृष्ठों को देखने के लिए एक MacOS X GUI एप्लिकेशन है, जो यूनिक्स कमांड लाइन प्रोग्राम, प्रोग्रामर लाइब्रेरी और अन्य सिस्टम जानकारी के लिए मानक दस्तावेज हैं। यह सीधे फाइलें खोल सकता है या शीर्षक दिया जा सकता है, इस स्थिति में यह `मैन 'कमांड-लाइन प्रोग्राम से आउटपुट प्रदर्शित करेगा। एक एप्रोपोस इंटरफ़ेस भी प्रदान किया जाता है, जो मूल रूप से मैन पेज डेटाबेस का त्वरित और गंदा खोज है। चयनित फ़ाइलों / शीर्षकों को खोलने या चयनित पाठ का उपयोग करके एप्रोपोज़ खोजों को करने के लिए सेवाएं अन्य अनुप्रयोगों को प्रदान की जाती हैं। ManOpen कमांड लाइन को नीचे किए बिना एक मैन पेज खोलने, लंबी और जटिल मैन पेजों के माध्यम से ब्राउज़ करने और खोज करने, या बस उन्हें प्रिंट करने के लिए उपयोगी हो सकता है।

इसमें एक 'ओपनमैन' कमांड लाइन टूल भी शामिल है, जो कि आदमी के समान है, सिवाय इसके कि यह टर्मिनल के बजाय सीधे ManOpen.app में मैन पेज प्रदर्शित करेगा।

या सफारी में उन पृष्ठों को पढ़ा? तब जाकर बवाना

बवाना डाउनलोड करें और इसे अपने एप्लिकेशन फ़ोल्डर में छोड़ दें। फिर, इसे भी चलाने के बिना, आप अपने ब्राउज़र का उपयोग करके यूनिक्स मैनुअल पेज देखना शुरू कर सकते हैं। बस उस आदमी पेज को टाइप करें जिसके बाद आप अपने ब्राउज़र के URL फ़ील्ड में खोज रहे हैं। मारो मारो और बवाना को आराम करने दो।

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

फिर आप इसके लिए एक शेल फ़ंक्शन बना सकते हैं:

function sman
    open -a Bwana man:$1
end

पूर्णता के लिए: यदि आपके पास X11 स्थापित है, तो आपके पास भी है xman

अन्य उम्मीदवार मैन रीडर ($) , मैनपेजर , मैनपावर ($) , मैन व्यूअर हो सकते हैं


3

वे चीजों को अधिक जटिल क्यों बनाते हैं?

https://man.openbsd.org/ssh

चूंकि आप यहां पोस्ट कर सकते हैं, आप स्पष्ट रूप से इंटरनेट तक पहुंच सकते हैं।

यदि आप थोड़ा सा चारों ओर गूगल करते हैं, तो आप शायद अलग-अलग तरीकों से स्वरूपित संस्करण पा सकते हैं, जैसे, पीडीएफ या तो।


4
व्यावहारिकता के लिए +1 हालांकि अब आपको यह पता लगाना है कि आप जिस मैन पेज की तलाश कर रहे हैं, वह कौन सा संस्करण है, कभी-कभी (विभिन्न उपकरणों के लिए जहां कमांड लाइन तर्क उदाहरण के लिए लिनक्स और बीएसडी के बीच भिन्न होते हैं, या जहां चीजें संस्करणों के बीच बहुत बदल जाती हैं )
शराबी

और @ शराबी की टिप्पणियों के अलावा, यह किसी भी macOS टूल के लिए काम नहीं करेगा, जिसमें टाइम मशीन के लिए बहुत सारे, जैसे tmutil हैं।
GRG

1
@grg हाँ यह ss64.com/osx/tmutil.html
db

1
यह एक अलग वेबसाइट है, क्या आपको पोस्ट या Google में अपने लिंक से खोज करने पर मिला है? मुझे पता है कि Apple के अपने डेवलपर संदर्भ सहित ऑनलाइन मैन पेजों की भरमार है, जिसमें वास्तव में tmutil मैन पेज शामिल है, लेकिन फिर यह उत्तर 'Google it' से ज्यादा कुछ नहीं है?
GRG

@grg मुझे यह Google से मिला। हां, लेकिन सवाल के साथ उद्देश्य आदमी पृष्ठों को पढ़ने को सरल बनाना था और वेबपेज उस लक्ष्य को प्राप्त करने का एक अच्छा तरीका है।
db

2

यदि आप चाहते हैं कि आपके मैनुअल पृष्ठों की पीडीएफ प्रतियां हैं, तो यहां एक फ़ंक्शन है जिसे मैंने अपनी .bash_profileफाइल में जोड़ा है ताकि मैं प्रत्येक बीएसडी कमांड की पीडीएफ बना सकूं, जिसके लिए मैं मैनुअल पेज की जांच करूंगा :

manp () 
{ 
    docDir="$HOME/Documents/BSD Commands"
    [[ ! -d $docDir ]] && mkdir -p "$docDir"
    if [[ ! -f $docDir/$1.pdf ]]; then
        man -t "$1" | pstopdf -i -o "$docDir/$1.pdf"
        open "$docDir/$1.pdf"
    else
        open "$docDir/$1.pdf"
    fi
}

इसलिए, टर्मिनल में , एक पीडीएफ केmanp bash बजाय टाइपिंग टाइप हो जाता है, अगर यह पहले से ही नहीं है, और फिर पीडीएफ दस्तावेजों को संभालने के लिए पंजीकृत ऐप द्वारा खोला गया । डिफ़ॉल्ट है पूर्वावलोकन , इसका इस्तेमाल करने के लिए सेट है लेकिन अपने सिस्टम पर स्किम , जैसा कि इसके खोज की कार्यक्षमता बेहतर है तो पूर्वावलोकन और तथ्य की बात के रूप में खोज स्ट्रिंग मिलेगा जब पूर्वावलोकन बस नहीं होगा।man bash

ध्यान दें कि पहली बार फ़ंक्शन का उपयोग करने पर यह टर्मिनल में आउटपुट में कुछ फोंट की गणना करेगा , हालांकि यह फोंट का एक बार जमाव है।

पीडीएफ प्रतियों के बारे में अच्छी बात यह है कि यह प्रारूपण, यानी बोल्ड फ़ॉन्ट और इटैलिक आदि को बनाए रखता है।


साइड नोट के रूप में, टर्मिनल में केवल कमांड नाम टाइप करना और फिर उस पर राइट-क्लिक करें और ओपन मैन पेज का चयन करें , इसे पूरी तरह से स्क्रॉल करने योग्य और खोज योग्य टर्मिनल विंडो में प्रदर्शित करता है , जो तब टाइप करना बहुत बेहतर होता है ।man bash

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