# विकास युक्ति: कंसोल आउटपुट को स्वचालित रूप से क्लिपबोर्ड पर कॉपी करें **श्रेणी:** लिनक्स / शैल उत्पादकताXस्पेसब्रेकX **प्लेटफ़ॉर्म:** लिनक्स (zsh + Konsole/KDE) --- ## समस्या एआई सहायकों के साथ काम करते समय, आपको अक्सर टर्मिनल आउटपुट की प्रतिलिपि बनाने और उसे चैट में पेस्ट करने की आवश्यकता होती है। इसका आमतौर पर मतलब है: 1. आदेश चलाएँ 2. माउस से आउटपुट चुनें 3. प्रतिलिपि 4. ब्राउज़र पर स्विच करें 5. चिपकाएँ ये बहुत सारे कदम हैं. --- ## समाधान: `preexec` / `precmd` के माध्यम से ऑटो-कैप्चर इसे अपने `~/.zshrc` में जोड़ें: __CODE_ब्लॉक_0__ फिर पुनः लोड करें: __CODE_ब्लॉक_1__ ### परिणाम प्रत्येक कमांड के बाद, आउटपुट स्वचालित रूप से आपके क्लिपबोर्ड में होता है - **Ctrl+V** के साथ आपके AI चैट में पेस्ट करने के लिए तैयार। संदर्भ के लिए आउटपुट को हमेशा `~/t.txt` में भी सहेजा जाता है। --- ## यह काम किस प्रकार करता है | भाग | यह क्या करता है | |------|----|| | `प्रीएक्सेक()` | प्रत्येक कमांड से पहले चलता है, आउटपुट को `~/t.txt` | पर रीडायरेक्ट करता है | `precmd()` | प्रत्येक कमांड के बाद चलता है, stdout को पुनर्स्थापित करता है और क्लिपबोर्ड पर कॉपी करता है | | `टी ~/t.txt` | आउटपुट को टर्मिनल में दिखाते हुए फ़ाइल में सहेजता है | | `सेड '...'` | स्ट्रिप्स केडीई कंसोल शीर्षक एस्केप अनुक्रम (`]2;...` `]1;`) | | `एक्सक्लिप` | साफ़ किए गए आउटपुट को क्लिपबोर्ड पर कॉपी करता है | --- ## आवश्यकताएं __CODE_ब्लॉक_2__ --- ## ⚠️ क्या न करें `fc -ln -1 | का उपयोग **नहीं** करें अंतिम आदेश को पुनः निष्पादित करने के लिए bash`: __CODE_ब्लॉक_3__ यह समाप्त होने के बाद प्रत्येक कमांड को फिर से निष्पादित करता है, जो विनाशकारी दुष्प्रभाव पैदा कर सकता है - उदाहरण के लिए फ़ाइलों को ओवरराइट करना, `गिट कमिट` को फिर से चलाना, `sed -i` को फिर से चलाना, आदि। उपरोक्त `preexec`/`precmd` दृष्टिकोण **निष्पादन के दौरान** आउटपुट कैप्चर करता है - सुरक्षित और विश्वसनीय।