लिनक्स टर्मिनल में एक "इतिहास" सुविधा है। इस सुविधा के साथ, आपके द्वारा दर्ज किया गया प्रत्येक कमांड ऑपरेशन बाद के लिए बैकअप हो जाएगा। चूंकि आपके सभी टर्मिनल कमांड "इतिहास" में सहेजे गए हैं, इसलिए इसे सुरक्षित रखने के लिए इसका बैकअप रखना आवश्यक है।
इस गाइड में, हम आपको दिखाएंगे कि लिनक्स टर्मिनल इतिहास का बैकअप कैसे लें और साथ ही बैकअप को कैसे पुनर्स्थापित करें। तो, अपने पसंदीदा लिनक्स टर्मिनल एमुलेटर को खोलें और साथ पालन करें!
लिनक्स टर्मिनल इतिहास कहाँ संग्रहीत है?
लिनक्स टर्मिनल एक फ़ाइल में अपना इतिहास संग्रहीत करता है। इस फ़ाइल का नाम ".bash_history" है। कोई भी इसे संपादित कर सकता है, और इसे होम निर्देशिका में संग्रहीत किया जाता है। चूंकि लिनक्स के लिए टर्मिनल इतिहास फ़ाइल एक उपयोगकर्ता निर्देशिका में संग्रहीत की जाती है, सिस्टम पर हर एक उपयोगकर्ता के पास एक फ़ाइल होती है।
विशेष अनुमतियाँ इन इतिहास की रक्षा नहीं करती हैंफ़ाइलें, और सिस्टम पर कोई भी उपयोगकर्ता एक साधारण कमांड के साथ दूसरे के इतिहास पर एक नज़र डाल सकता है। इसलिए, उदाहरण के लिए, यदि मैं अपने लिनक्स सिस्टम पर उपयोगकर्ता नाम "उपयोगकर्ता" के टर्मिनल / कमांड-लाइन इतिहास पर एक नज़र डालना चाहता हूं, तो मैं ऐसा नहीं करूंगा:

cat /home/user/.bash_history
उपयोगकर्ता केवल "इतिहास" कमांड को निष्पादित करके, लिनक्स टर्मिनल शेल में लॉग इन किए गए वर्तमान उपयोगकर्ता के इतिहास को देख सकते हैं।
history
सबसे अच्छा, चूंकि "इतिहास" केवल एक फ़ाइल है, इसलिए इसे grep फ़ंक्शन का उपयोग करके एक नियमित पाठ फ़ाइल की तरह खोजा जा सकता है। इसलिए, उदाहरण के लिए, नीचे दिए गए आदेश के साथ उपयोगकर्ता नाम "git क्लोन" के उदाहरणों को खोजने के लिए।
cat /home/user/.bash_history | grep "git clone"
यह "इतिहास" कमांड के साथ उपयोगकर्ता में वर्तमान लॉग के रूप में भी काम करता है।
history | grep "search term"
टर्मिनल इतिहास को बैकअप में सहेजें
इस गाइड के पिछले भाग में, मैंने बात कीलिनक्स टर्मिनल के लिए "इतिहास" किस तरह से केवल बड़े करीने से छिपी हुई पाठ फ़ाइल है जिसमें सभी उपयोगकर्ता-दर्ज कमांड हैं। खैर, चूंकि यह सिर्फ एक फाइल है, इसका मतलब है कि यह सुरक्षित करने के लिए बैक अप लेना आसान है।
बैकअप बनाने के लिए, का उपयोग करें बिल्ली आदेश। क्यों? साथ में बिल्ली, आप टर्मिनल में एक पाठ फ़ाइल की संपूर्णता देख सकते हैं। हम इस कमांड का उपयोग ">" प्रतीक के साथ बैकअप फाइल में देखने के आउटपुट को रीडायरेक्ट करने के लिए कर सकते हैं।
इसलिए, उदाहरण के लिए, अपने वर्तमान इतिहास का बैकअप लेने के लिए, चलाएं बिल्ली "~ / .bash_history" के विरुद्ध कमांड करें और इसे "history_backup" के लेबल वाली फ़ाइल में सहेजें।

cat ~/.bash_history > history_backup
आप भी चला सकते हैं इतिहास ">" के साथ संयोजन में कमांड करें और इसे इस तरह से सहेजें।
history > history_backup
अंत में, नीचे कमांड को चलाकर किसी अन्य उपयोगकर्ता की कमांड-लाइन / टर्मिनल इतिहास का बैकअप लेना संभव नहीं है।
नोट: उस उपयोगकर्ता को "उपयोगकर्ता नाम" बदलना सुनिश्चित करें जिसे आप इतिहास से बचाना चाहते हैं।
cat /home/username/.bash_history > history_backup
केवल इतिहास की कुछ वस्तुओं का समर्थन करना
आप केवल अपने लिनक्स टर्मिनल इतिहास में विशिष्ट कमांड का बैकअप लेना चाहते हैं। ऐसा करने का तरीका इतिहास फ़ाइल को देखना और उसके साथ संयोजन करना है ग्रेप कमांड, जो विशिष्ट कीवर्ड फ़िल्टर करेगा।
उदाहरण के लिए, आपके लिनक्स टर्मिनल इतिहास में केवल बैकअप कमांड्स हैं जिनमें शामिल हैं गिट क्लोन या Git कमांड, आप नीचे ऑपरेशन चला सकते हैं।
ध्यान दें: इन उदाहरणों में, हम ">" के बजाय ">>" का उपयोग कर रहे हैं। ">>" का कारण यह है कि यह इतिहास फ़ाइल बैकअप की सामग्री को अधिलेखित नहीं करेगा, और जोड़ने के लिए कई बार फिर से चलाया जा सकता है। बैकअप।
cat ~/.bash_history | grep "git" >> history_backup
या
cat /home/username/.bash_history | grep "git" >> history_backup
के साथ छान रहा है ग्रेप पर भी लागू किया जा सकता है इतिहास कमान, ऐसा।
history | grep "git" >> history_backup
इतिहास फ़ाइल से कुछ कीवर्ड का बैकअप लेने के लिए, ऊपर दिए गए उदाहरणों में "गिट" को बदलें, जो भी आप बैकअप लेना चाहते हैं। इस कमान को फिर से चलाने के लिए स्वतंत्र महसूस करें जितना आवश्यक हो।
इतिहास बैकअप कैसे पुनर्स्थापित करें
इतिहास बैकअप को पुनर्स्थापित करना मूल फ़ाइल को हटाने और बैकअप को उसके स्थान पर रखने के रूप में सरल है। मूल इतिहास फ़ाइल को हटाने के लिए, का उपयोग करें rm ".bash_history" को हटाने के लिए एक टर्मिनल विंडो में कमांड।
rm ~/.bash_history
एक बार मूल इतिहास फ़ाइल उपयोगकर्ता के होम फ़ोल्डर से हटा दी जाती है जिसमें आप इतिहास को पुनर्स्थापित करना चाहते हैं, का उपयोग करें mv ".bash_history" पर "history_backup" का नाम बदलने के लिए आदेश।
mv history_backup ~/.bash_history
अब जब नई इतिहास फ़ाइल चल रही है इतिहास -rw टर्मिनल के इतिहास समारोह को फिर से लोड करने के लिए कमांड।
history -rw
तब आप अपने टर्मिनल इतिहास के साथ देख पाएंगे:
history
अन्य उपयोगकर्ताओं के लिए बैकअप पुनर्स्थापित करें
सिस्टम पर अन्य उपयोगकर्ताओं से इतिहास बैकअप को पुनर्स्थापित करने की आवश्यकता है? ऐसा करने के लिए, का उपयोग करके अपने उपयोगकर्ता में प्रवेश करके शुरू करें सु आदेश।
su username
उपयोगकर्ता में प्रवेश करने के बाद, उपयोगकर्ता के होम डायरेक्टरी (~) में रहने वाली वर्तमान इतिहास फ़ाइल को हटा दें।
rm ~/.bash_history
वहां से, इतिहास बैकअप फ़ाइल को उपयोगकर्ता की निर्देशिका में नई ".bash_history" फ़ाइल के रूप में बदलें।
mv /path/to/backup/file/history-backup ~/.bash_history
इसके साथ बदलाव लिखें:
history -rw
जब हो जाए, दौड़ो इतिहास टर्मिनल विंडो में बहाल आदेशों को देखने के लिए।
टिप्पणियाँ