tl; डॉ
... | tmux loadb -
tmux saveb - | ...
स्पष्टीकरण और पृष्ठभूमि
Tmux में, सभी कॉपी / पेस्ट गतिविधि बफर स्टैक के माध्यम से जाती है जहाँ शीर्ष (इंडेक्स 0) सबसे हाल ही में कॉपी किया गया टेक्स्ट है और जब कोई बफर इंडेक्स स्पष्ट रूप से प्रदान नहीं किया जाता है तो चिपकाने के लिए उपयोग किया जाएगा -b
। आप वर्तमान बफ़र्स के साथ tmux list-buffers
या डिफ़ॉल्ट शॉर्टकट tmux-prefix+ का निरीक्षण कर सकते हैं #।
स्टैक के शीर्ष पर एक नया tmux बफर में पाइपिंग करने के लिए दो तरीके हैं, set-buffer
एक स्ट्रिंग तर्क और load-buffer
एक फ़ाइल तर्क ले रहा है। एक बफर में पाइप करने के लिए जिसे आप आमतौर पर load-buffer
स्टडिन के साथ उपयोग करना चाहते हैं , जैसे .:
print -l **/* | tmux loadb -
संपादकों में इसे वापस लाना और यह बहुत स्पष्ट है ( tmux-prefix+ ]या जो कुछ भी आप के paste-buffer
लिए बाध्य है), हालांकि, शेल के अंदर से पेस्ट को एक्सेस करना नहीं है, क्योंकि इनवॉइसिंग paste-buffer
पेस्ट को स्टड में लिख देगा, जो आपके टर्मिनल के संपादन में समाप्त होता है बफर, और पेस्ट में कोई भी नई लाइन खोल को निष्पादित करेगी जो अब तक चिपकाया गया है (संभवतः आपके दिन को बर्बाद करने का एक शानदार तरीका)।
इस से निपटने के कुछ तरीके हैं:
tmux pasteb -s ' '
: -s
आप जो भी विभाजक प्रदान करते हैं, उसके साथ सभी लाइन अंत (विभाजक) को बदल देता है। हालाँकि आप अभी भी paste-buffer
इसका व्यवहार प्राप्त करते हैं जिसका अर्थ है कि आपके टर्मिनल एडिट बफर में पेस्ट समाप्त हो गया है, जो कि आप चाहते हैं, लेकिन आमतौर पर ऐसा नहीं है।
tmux showb | ...
: show-buffer
बफर को स्टडआउट करने के लिए प्रिंट करता है, और यह लगभग आवश्यक है, लेकिन जैसा कि क्रिस जॉन्सन ने टिप्पणी में उल्लेख किया है , show-buffer
गैर-मुद्रण योग्य ASCII वर्णों और गैर-ASCII वर्णों की अष्टकोणीय एन्कोडिंग करता है। यह दुर्भाग्य से अक्सर परेशान करने के लिए पर्याप्त रूप से टूट जाता है, यहां तक कि सरल चीजों के साथ भी जैसे कि शून्य समाप्त तार या उच्चारण लैटिन वर्ण (जैसे। (zsh में) print -N á | tmux loadb - ; tmux showb
प्रिंट \303\241\000
)।
tmux saveb - | ...
: save-buffer
बस उल्टा करता है load-buffer
और कच्चे बाइट्स को स्टैमन में अनमॉडिफाइड लिखता है, जो कि ज्यादातर मामलों में वांछित है। फिर आप दूसरे पाइप को इकट्ठा करना जारी रख सकते हैं, और जैसे। के माध्यम से पारित | xargs -n1 -I{} ...
प्रक्रिया लाइन बुद्धिमान, आदि के लिए ..
tmux show-buffer
C0 नियंत्रण वर्ण और गैर- ASCII बाइट (जैसे उच्चारण लैटिन वर्ण, आदि) के अष्टकोणीय एन्कोडिंग करेंगे। आपtmux save-buffer -
कच्चे बाइट्स का उपयोग कर सकते हैं (यह आमतौर पर आप क्या चाहते हैं)।