A Linux szkriptek használata az Asztal rendbetételéhez a Windows 10 rendszerben



Próbálja Ki A Műszerünket A Problémák Kiküszöbölésére

Amikor először elolvasta a cikk címsorát, megbocsátható, ha azt gondolja, hogy valami műszakilag helytelen. Végül is a Linux nem része a Windows operációs rendszernek? Két teljesen különböző operációs rendszerről van szó. Korábban a Linux parancsfájlok használatának egyetlen módja a Windows rendszerrel korábban az volt, hogy vagy valami hasonlót telepítettek Cygwin . vagy használjon kettős rendszerindító Linux rendszert, vagy telepítsen valami hasonlót Samba .



Mindez megváltozott a Windows 10-ben! A Microsoft Windows Store-ban több Linux-disztribúció is elérhető. Ez az előző Alkalmi cikk a Kali Linuxról leír egy ilyen módszert egy adott Linux disztribúció megszerzésére a Windows 10 környezetben.



A Linux szkriptek használatának egyik előnye a Windows gépén az, hogy a feladatok automatizálásához felhasználhatja az erőteljes Linux szkriptnyelvet, különösen, ha jobban ismeri a Linux szkripteket, mint mondjuk a Powershell vagy a Dos kötegelt fájlokat. Ez a cikk elmagyarázza, hogyan kell írni egy „bash” szkriptet egy tipikus Windows Asztal megtisztításához. Ha még nem ismeri a Linuxot, megtanulja az alapokat ebből a cikkből, és létrehoz egy hasznos segédprogramot a folyamat során.



Egy alap Ubuntu Linux terminált fogunk használni (elérhető a Windows Store-ban Windows 10 gépeken), amely lehetővé teszi bash, k ssh, git, apt és sok más Linux parancs használatát. Ezt telepíteni kell, ha még nem tette meg. A módszer ismertetése itt .

A Linux parancssora

Miután telepítette és futtatta az Ubuntut, a következőhöz hasonló parancssori ablakot kap. Ez egy bash Linux parancssort kap:



Most megírjuk a forgatókönyvünket. Bármely szerkesztővel szerkesztheti a fájlt, beleértve a Windows-szerkesztőt, például a jegyzettömböt, vagy a Linux-szerkesztőt, például a vi-t, ha biztos benne, hogy használja.

Amikor megnyitja az Ubuntu terminált, a tartózkodási helye lesz az otthoni könyvtár az Ubuntu munkaterületen. Ez meggyőződhet a parancs megadásáról a parancssorba:

echo $ HOME

és kiadja az otthoni könyvtárat a következő képernyőkép szerint. Linux formátum, előre mutató perjeleket használ, amelyek a könyvtárakat képviselik, például „/”.

A kényelem érdekében elhelyezzük a szkriptet a saját könyvtárban.

A következő lépés az, hogy megtudja az asztala helyét, mivel Linux útként ismert. Erre szükségünk lesz ahhoz, hogy a megfelelő könyvtárban lévő fájlokkal végezhessünk műveleteket.

A „cd /” terminálban. Ez az Ubuntu környezet gyökérterületére vezet.

Ezután írja be az „ls” szót

Ez felsorolja az összes Linux-könyvtárat. Valami ilyesmit fog látni a Linux terminálon:

Meg kell találnunk a felhasználói asztalt. Feltéve, hogy ez a C meghajtón van, váltson át az „mnt” könyvtárra. Itt azonosítják a Windows meghajtókat, így:

Ezután tudnia kell, hogy az asztal melyik könyvtárban található. Ezt általában a Windows rendszerben találja meg, ha a jobb egérgombbal kattint az asztal ikonjára, például a File Explorer „Gyors hozzáférés” listájáról. Megjelenik az asztali könyvtár helye:

Ebből a terminálon lévő Linux használatával válthat be a könyvtárába:

Ezért ebben a példában beírja a terminált, és ne feledje, hogy a visszavágás a Windows rendszerben egyenértékű a továbbított perjelekkel a Linuxban. Esetemben a „könyvtár megváltoztatása” parancsban a következő elérési út szükséges:

cd / mnt / c / Users / gofor / OneDrive / Desktop

Ezután az „ls” paranccsal felsorolhatja az asztalon található összes fájlt:

Ha valami hasonló az asztalomhoz, akkor hosszú listát kap az ilyen fájlokról:

Itt láthatja, hogy az asztalom milyen rendetlenül néz ki a Windows rendszerben:

További ikonok voltak a másik 2 monitoromon, ezért osztályoznunk és rendszereznünk kell ezeket a fájlokat! A megadott szkript minden fájltípust felvesz, és az asztalon egy megfelelő nevű mappába helyezi őket.

Tehát például gyorsparancsfájlok, ezek * .lnk fájlok lesznek, ezért áthelyezzük őket egy „SHORTCUTS” nevű mappába.
Hasonlóképpen, a képfájlok, például a .jpg, .png, .bmp, .svg átkerülnek egy „IMAGES” nevű mappába.
A dokumentumokat és az Office dokumentumokat, például a word fájlokat, azaz a .docx, .pdf, .xls, egy „OFFICEDOCS” nevű mappába kell helyezni.

Tehát a parancsfájl futtatásakor az összes dokumentum szervezetten, az adott fájlkategóriához létrehozott megfelelő könyvtárban lesz elérhető. Ez megzavarja az asztalt és rendezettebbé teszi az asztali fájlokat. Létrehozhat annyi mappatípust és meghatározhatja a fájlfeltételeket, amennyit csak akar. A fájlokat nem kell csak fájltípusok szerint rendezni, létrehozhat kategória mappákat, ahogy szeretné, például a „HRFILES” és a „PROJECTFILES” mappákat. Ebben a példában a fájlokat a fájltípusuk szerint rendezzük.

Kategória és fájllista létrehozása

Az alkalmazás használatához 2 fájlra lesz szükségünk:

A) A vesszővel elválasztott CSV-fájlban tartott kategóriák és fájltípusok listája. Minden kategória neve annak a könyvtárnak a neve lesz, amelybe a fájlok az asztalon kerülnek. Bármelyik preferált szerkesztővel létrehozhatja a CSV fájlt. Ebben a példában a Jegyzettömböt fogjuk használni.
B) Linux szkript, amely elolvassa a kategória fájlt és feldolgozza a szükséges rendezett funkciót.

Fájl létrehozása az aktuális könyvtárban a terminál típusával:

notepad cleanup.csv

Mivel a fájl ebben a szakaszban nem létezik, ezért új fájl létrehozását kéri, ezért csak nyomja meg az „Igen” gombot.

Most a következő részleteket adjuk meg: „category, filetype1, filetype2, filetype3,… stb.” 1 sor minden kategóriához:

RÖVIDÍTÉSEK, lnk 
KÉPEK, jpg, png, svg
DOKUMENTUMOK, txt, docx, doc, pdf

Az első mező az asztalon található könyvtár neve lesz, ahová a fennmaradó fájltípusok kerülnek. A fennmaradó mezők azok a fájltípusok, amelyeket át kíván helyezni a mappába.

Ezért a SHORTCUTS mappában az összes * .lnk fájl áthelyezésre kerül ebbe a mappába. A KÉPEK mappában minden * .jpg, *. Png és * .svg fájlt tartalmazó fájl áthelyezésre kerül a KÉPEK mappába. Végül az összes * .txt, *. Docx, *. Doc és * .pdf fájlt áthelyezzük a DOCUMENTS mappába. Ily módon a fájlokat a megfelelő könyvtárakba rendezzük.

Miután létrehoztuk a CSV fájlt, készen állunk a szkript megírására. Meghívjuk a scriptet, cleanup.sh. Egyébként ennek a szkriptnek minimális ellenőrzése lesz, ezért meg kell győződnie arról, hogy a CSV fájl a megfelelő formátumban van, különben nem fog működni! A szkriptben csak annyit fogunk tenni, hogy minimális ellenőrzésként ellenőrizzük, hogy léteznek-e fájlok és mappák.

Szerkesztheti a parancsfájlt a terminálon, ha ismeri a Unix típusú szerkesztőket, például a vi, vagy egyszerűen használhatja a Jegyzettömböt:

jegyzettömb takarítás.sh

A szkript művelete az, hogy beállítsa a szkriptben olvasott CSV-fájl nevét és a megtisztítani kívánt asztal helyét. Változókat állítunk be a tisztító CSV fájlhoz és az asztal helyéhez. Esetemben ez a következő. Ki kell cserélnie az asztali helyet a saját helyére. Felhívjuk figyelmét, hogy a „” között bármi helyőrző, ahol meg kell adnia a konkrét információkat.

Így. a szkript első 2 sora a következő:

DESKTOP = / mnt / c / Felhasználók // Asztal 
CSV = takarítás.csv

A teljes szkript alább látható. Kérjük, olvassa el a megjegyzéseket, ha meg akarja érteni a parancsokat, és ha nem biztos a parancsban, próbálkozzon a „man” paranccsal a Linux parancssorán, hogy jobban betekintsen a parancs működésébe.

Tegye futtathatóvá a tisztító szkriptet és futtassa

A szkript futtatásához a home parancssorból futtathatóvá kell tenni a következő paranccsal:

chmod + x cleanup.sh

A szkript futtatásához be kell írnia a következőket, ahogyan azok az aktuális könyvtárban vannak.

./cleanup.sh

Így nézett ki az asztalom a szkript futtatása előtt és után. Láthatja, hogy az áthelyezett fájlokat tartalmazó mappák létrejöttek, és az asztal sokkal kevésbé rendetlen:

Előtt: Után:

és a SHORTCUTS könyvtár, az összes hivatkozással az asztalról áthelyezve.

A teljes asztali Tidy Linux Script for Windows

Kérjük, vegye figyelembe a szkriptben „#” előtaggal ellátott megjegyzéseket, amelyek elmagyarázzák a szkript működését. # Állítson be változókat a helyi asztal vagy bármelyik megtisztítani kívánt könyvtár helyéhez, valamint a CSV fájl nevéhez.

DESKTOP = / mnt / c / Users / gofor / OneDrive / Desktop 
CSV = takarítás.csv

# Tesztelje, hogy létezik-e a tisztító csv fájl, egy linux „teszt” paranccsal és a fájl létezésére szolgáló „-f” jelzővel.
# Ha a fájl nem létezik, adjon ki egy hibaüzenetet, majd lépjen ki a parancsfájlból.

ha [! -f $ {CSV}] akkor 
echo A cleanup.csv fájl nem létezik.
kilépés -1
lenni

# Most konvertálja a CSV-t, ha dos formátumban mentette Unix formátumba, eltávolítva a kocsivissza karaktereket.
# Mentse a kimenetet egy ideiglenes fájlba, majd nevezze át az ideiglenes fájlt az eredeti névre.

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

# Most menjen végig soronként a CSV fájlban, és tárolja az első argumentum nevét, amely a
# kategória / könyvtár neve, amelynél az összes többi argumentum a fájltípus lesz
# kerül ezekbe a könyvtárakba.

miközben csvline-t olvasott 
csináld
szám = 1
fájltípushoz az `echo '$ csvline' | tr, n '
csináld
ha [$ count -eq 1] akkor
# Mivel ez az első argumentum, ellenőrizze, hogy a mappa már létezik-e, és ha nem, akkor hozza létre.
ha [! -d $ {DESKTOP} / $ filetype] majd
# A könyvtár nem létezik, ezért létrehozzuk.
mkdir $ {DESKTOP} / $ fájltípus
lenni
CATEGORY = $ {filetype}
más
# Kimenjen egy barátságos üzenetet, jelezve, hogy a szkript mit csinál.
echo 'mozgó *. $ {filetype} ide: $ {CATEGORY}'
# Ne jelenjen meg hibaüzenet (azaz> 2 / dev / null) a fájlok áthelyezésekor, ha a fájlok nem léteznek,
# tehát az 'mv' parancs 'néma'.
mv $ {DESKTOP} /*.$ {filetype} $ {DESKTOP} / $ {CATEGORY} 2> / dev / null
lenni
count = `expr $ count + 1`
Kész
Kész< cleanup.csv
7 perc olvasás