विंडोज 10 में अपने डेस्कटॉप को व्यवस्थित करने के लिए लिनक्स स्क्रिप्ट का उपयोग कैसे करें



समस्याओं को खत्म करने के लिए हमारे साधन का प्रयास करें

जब आप पहली बार इस टुकड़े की हेडलाइन पढ़ते हैं तो आपको यह सोचने के लिए क्षमा किया जा सकता है कि तकनीकी रूप से कुछ गलत है। सब के बाद, लिनक्स विंडोज ऑपरेटिंग सिस्टम का हिस्सा नहीं है? वे दो पूरी तरह से अलग ऑपरेटिंग सिस्टम हैं। इससे पहले, अतीत में विंडोज के साथ लिनक्स स्क्रिप्टिंग का उपयोग करने का एकमात्र तरीका कुछ को स्थापित करना था cygwin । या दोहरी बूट लिनक्स प्रणाली का उपयोग करें या कुछ ऐसा स्थापित करें सांबा ।



विंडोज 10 में सब बदल गया! माइक्रोसॉफ्ट विंडोज स्टोर पर लिनक्स के कई वितरण उपलब्ध हैं। यह पिछले काली लिनक्स पर लेख आपके विंडोज 10 वातावरण में एक विशिष्ट लिनक्स वितरण प्राप्त करने की एक ऐसी विधि का वर्णन करता है।



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



हम एक बुनियादी उबंटू लिनक्स टर्मिनल, (विंडोज 10 मशीनों पर विंडोज स्टोर पर उपलब्ध) का उपयोग करेंगे, जो आपको बैश, के ssh, git, apt और कई अन्य लिनक्स कमांड का उपयोग करने की अनुमति देता है। यदि आपको पहले ही ऐसा नहीं करना है तो इसे इंस्टॉल करना होगा। विधि बताई गई है यहाँ ।

लिनक्स कमांड लाइन

एक बार जब आप उबंटू स्थापित कर लेते हैं और इसे चलाते हैं तो आपको निम्न के समान एक कमांड लाइन विंडो मिलेगी। यह आपको एक bash Linux, कमांड लाइन देगा:



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

जब आप उबंटू टर्मिनल खोलते हैं, तो उबंटू कार्यक्षेत्र में आपका स्थान आपकी घरेलू निर्देशिका होगी। यह कमांड प्रॉम्प्ट पर कमांड दर्ज करके पता लगाया जा सकता है:

गूंज $ घर

और यह आपके होम डायरेक्टरी को आउटपुट करेगा जैसा कि निम्नलिखित स्क्रीनशॉट में दिखाया गया है। लिनक्स प्रारूप, निर्देशिकाओं का प्रतिनिधित्व करने वाले फ़ॉरवर्ड स्लैश का उपयोग करता है, जैसे '/'।

सुविधा के लिए, हम स्क्रिप्ट को होम डायरेक्टरी में रखेंगे।

अगला कदम अपने डेस्कटॉप के स्थान का पता लगाना है, क्योंकि इसे लिनक्स पथ के रूप में जाना जाता है। सही निर्देशिका में फ़ाइलों पर कार्रवाई करने के लिए हमें इसकी आवश्यकता होगी।

टर्मिनल प्रकार में 'cd /'। यह आपको अपने Ubuntu वातावरण के मूल क्षेत्र में ले जाता है।

फिर 'ls' टाइप करें

यह लिनक्स में सभी निर्देशिकाओं को सूचीबद्ध करता है। आप लिनक्स टर्मिनल में कुछ इस तरह देखेंगे:

हमें आपका उपयोगकर्ता डेस्कटॉप खोजने की आवश्यकता है। यह मानते हुए कि C ड्राइव पर है, 'mnt' निर्देशिका में बदलें। यह वह जगह है जहाँ विंडोज़ ड्राइव की पहचान की जाएगी:

फिर आपको यह जानना होगा कि आपका डेस्कटॉप किस निर्देशिका में रहता है। आप इसे आमतौर पर डेस्कटॉप आइकन पर 'राइट क्लिक' करके विंडोज़ में पा सकते हैं, जैसे फ़ाइल एक्सप्लोरर में 'त्वरित पहुंच' सूची से। आपका डेस्कटॉप निर्देशिका स्थान दिखाया जाएगा:

इससे, आप टर्मिनल में लिनक्स का उपयोग करके अपनी निर्देशिका में बदल सकते हैं:

इसलिए, इस उदाहरण में, आप टर्मिनल में टाइप करते हैं, यह याद रखते हुए कि विंडोज में बैकस्लैश लिनक्स में फॉरवर्ड स्लैश के बराबर हैं। मेरे मामले में, 'परिवर्तन निर्देशिका' कमांड में आवश्यक पथ है:

cd / mnt / c / उपयोगकर्ता / gofor / OneDrive / डेस्कटॉप

तब आप अपने डेस्कटॉप पर 'ls' का उपयोग करके सभी फाइलों को सूचीबद्ध कर सकते हैं:

अगर यह मेरे डेस्कटॉप की तरह कुछ भी है तो आपको फाइलों की एक लंबी सूची मिल जाएगी जैसे:

आप देख सकते हैं कि मेरा डेस्कटॉप विंडोज में कितना गन्दा दिखता है:

मेरे अन्य 2 मॉनिटर पर अधिक आइकन थे, इसलिए हमें इन फ़ाइलों को वर्गीकृत करने और व्यवस्थित करने की आवश्यकता है! प्रदान की गई स्क्रिप्ट प्रत्येक फ़ाइल प्रकार को ले जाएगी, और उन्हें डेस्कटॉप पर प्रासंगिक रूप से नामित फ़ोल्डर में जगह देगी।

इसलिए, उदाहरण के लिए, शॉर्टकट फाइलें, ये * .lnk फाइलें होंगी, इसलिए हम उन्हें 'SHORTCUTS' नामक फ़ोल्डर में ले जाएंगे।
इसी तरह, .jpg, .png, .bmp, .svg जैसी इमेज फाइल्स को 'IMAGES' नामक फोल्डर में ले जाया जाएगा।
दस्तावेज़ और कार्यालय दस्तावेज़, जैसे शब्द फ़ाइलें यानी .docx, .pdf, .xls, को 'OFFICEDOCS' नामक फ़ोल्डर में रखा जाएगा।

इसलिए, जब स्क्रिप्ट चलाई जाती है, तो सभी दस्तावेज़ उस फ़ाइल श्रेणी के लिए बनाए गए प्रासंगिक निर्देशिका में, एक संगठित तरीके से उपलब्ध होंगे। यह डेस्कटॉप को अव्यवस्थित करेगा और आपकी डेस्कटॉप फ़ाइलों को अधिक व्यवस्थित करेगा। आप कई फ़ोल्डर प्रकार बना सकते हैं और अपनी इच्छानुसार फ़ाइल मानदंड निर्धारित कर सकते हैं। फ़ाइलों को केवल फ़ाइल प्रकार से व्यवस्थित करने की आवश्यकता नहीं है, आप श्रेणी फ़ोल्डर बना सकते हैं जैसे आप चाहते हैं, जैसे 'HRFILES' और 'PROJECTFILES'। इस उदाहरण में, हम फ़ाइलों को उनके फ़ाइल प्रकार द्वारा व्यवस्थित करेंगे।

एक श्रेणी और फ़ाइल सूची बनाना

इस एप्लिकेशन का उपयोग करने के लिए, हमें 2 फ़ाइलों की आवश्यकता होगी:

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

टर्मिनल प्रकार में वर्तमान निर्देशिका में एक फ़ाइल बनाने के लिए:

नोटपैड क्लीनअप।एससीवी

चूंकि इस स्तर पर फ़ाइल मौजूद नहीं होगी, इसलिए यह अनुरोध करेगा कि आप एक नई फ़ाइल बनाएँ, इसलिए 'हाँ' पर क्लिक करें।

अब हम निम्नलिखित विवरण दर्ज करेंगे, प्रारूप 'श्रेणी, filetype1, filetype2, filetype3, ..., आदि' प्रत्येक श्रेणी के लिए 1 पंक्ति में इस प्रकार:

शॉर्टकट, lnk 
इमेजेज, jpg, png, svg
दस्तावेजों, txt, docx, डॉक, पीडीएफ

पहला फ़ील्ड डेस्कटॉप पर निर्देशिका का नाम होगा, जहां शेष फ़ाइल प्रकारों को रखा जाएगा। शेष फ़ील्ड फ़ाइल प्रकार हैं जिन्हें आप फ़ोल्डर में ले जाना चाहते हैं।

इसलिए, SHORTCUTS फ़ोल्डर के लिए, सभी * .lnk फ़ाइलों को उस फ़ोल्डर में ले जाया जाएगा। IMAGES फ़ोल्डर के लिए, * .jpg, *। Png और * .svg के साथ सभी फाइलें IMAGES फ़ोल्डर में स्थानांतरित की जाएंगी। अंत में, हम सभी * .txt, *। Docx, *। Doc और * .pdf फ़ाइलों को डॉक्टर्स फ़ोल्डर में ले जाते हैं। इस तरह, हम फाइलों को सही निर्देशिकाओं में व्यवस्थित कर रहे हैं।

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

आप टर्मिनल में स्क्रिप्ट को संपादित कर सकते हैं यदि आप यूनिक्स प्रकार के संपादकों को जानते हैं, जैसे vi, या आप केवल नोटपैड का उपयोग कर सकते हैं:

नोटपैड क्लीनअप।श

स्क्रिप्ट की कार्रवाई उस CSV फ़ाइल का नाम सेट करना है जिसे हम स्क्रिप्ट में पढ़ रहे हैं, और डेस्कटॉप का स्थान जिसे हम साफ करना चाहते हैं। हम चर को सफाई CSV फ़ाइल, और डेस्कटॉप स्थान पर सेट करेंगे। मेरे मामले में, यह इस प्रकार है। आपको अपने लिए डेस्कटॉप स्थान बदलने की आवश्यकता होगी। कृपया ध्यान दें, कि 'कुछ भी' एक प्लेसहोल्डर है जहाँ आपको अपनी विशिष्ट जानकारी इनपुट करने की आवश्यकता है।

इसलिए। स्क्रिप्ट में पहले 2 लाइनें हैं:

डेस्कटॉप = / MNT / सी / उपयोगकर्ता // डेस्कटॉप 
सीएसवी = cleanup.csv

पूरी स्क्रिप्ट नीचे देखी जा सकती है। यदि आप कमांड्स को समझना चाहते हैं, तो कृपया टिप्पणियों को पढ़ें और यदि आप एक कमांड के बारे में सुनिश्चित नहीं हैं, तो कमांड कैसे काम करता है, इस बारे में अधिक जानकारी प्राप्त करने के लिए, लिनक्स कमांड लाइन पर 'आदमी' का प्रयास करें।

सफाई स्क्रिप्ट को निष्पादन योग्य बनाएं और उसे चलाएं

होम कमांड लाइन से स्क्रिप्ट को चलाने के लिए, आपको निम्नलिखित कमांड के साथ इसे निष्पादन योग्य बनाना होगा:

chmod + x cleanup.sh

स्क्रिप्ट को चलाने के लिए, आपको निम्न टाइप करना होगा, जैसा कि वर्तमान निर्देशिका में है।

./cleanup.sh

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

इससे पहले: उपरांत:

और SHORTCUTS निर्देशिका, डेस्कटॉप से ​​स्थानांतरित किए गए सभी शॉर्टकट के साथ।

विंडोज के लिए पूर्ण डेस्कटॉप साफ लिनक्स स्क्रिप्ट

कृपया स्क्रिप्ट में '#' द्वारा उपसर्ग किए गए टिप्पणियों पर ध्यान दें, क्योंकि वे बताते हैं कि स्क्रिप्ट कैसे काम करती है। # स्थानीय डेस्कटॉप या किसी भी निर्देशिका को साफ करने की इच्छा के लिए चर सेट करें, और, सीएसवी फ़ाइल का नाम।

डेस्कटॉप = / MNT / सी / उपयोगकर्ताओं / gofor / OneDrive / डेस्कटॉप 
सीएसवी = cleanup.csv

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

अगर [ ! -f $ {CSV}] तो 
गूंज Cleanup.csv फ़ाइल मौजूद नहीं है।
बाहर निकलें -1
होना

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

tr -d ' r' temp.csv 
mv temp.csv $ CSV

# अब, CSV फ़ाइल लाइन के माध्यम से लाइन पर जाएं, और पहले तर्क का नाम स्टोर करें, जो कि है
# श्रेणी / निर्देशिका नाम, जिसके आधार पर, सभी शेष तर्क फ़ाइल प्रकार हैं जो होंगे
# इन निर्देशिकाओं में रखा गया।

जबकि csvline पढ़ें 
कर
गिनती = 1
`इको '$ csvline' में फ़ाइल नाम के लिए | tr, ' n'`
कर
अगर [$ गिनती -एक 1] तो
# जैसा कि यह पहला तर्क है, यह देखने के लिए जांचें कि क्या फ़ोल्डर पहले से मौजूद है, और यदि नहीं, तो इसे बनाएं।
अगर [ ! -d $ {DESKTOP} / $ filetype] तब
# निर्देशिका मौजूद नहीं है, इसलिए हम इसे बनाएंगे।
mkdir $ {DESKTOP} / $ filetype
होना
श्रेणी = $ {} filetype
अन्य
# स्क्रिप्ट का क्या कर रहा है यह इंगित करने के लिए एक अनुकूल संदेश आउटपुट करें।
गूंज 'चलती *। $ {filetype} से $ {CATEGORY}'
# फाइलों के मौजूद न होने की स्थिति में फाइलों को ले जाने पर कोई त्रुटि संदेश (यानी 2 / dev / null) प्रदर्शित न करें:
# इसलिए 'mv' कमांड 'साइलेंट' है।
mv $ {DESKTOP} /*.$ {filetype} $ {DESKTOP} / $ {CATEGORY} 2> / dev / null
होना
count = `expr $ count + 1`
किया हुआ
किया हुआ< cleanup.csv
7 मिनट पढ़ा