Kā izmantot Linux skriptus, lai sakārtotu darbvirsmu operētājsistēmā Windows 10



Izmēģiniet Mūsu Instrumentu Problēmu Novēršanai

Kad jūs pirmo reizi izlasījāt šī raksta virsrakstu, jums var piedot domāt, ka kaut kas ir tehniski nepareizs. Galu galā Linux nav daļa no Windows operētājsistēmas, vai ne? Tās ir divas pilnīgi atšķirīgas operētājsistēmas. Iepriekš vienīgais veids, kā agrāk Linux operētājsistēmai Linux izmantot skriptu, bija vai nu instalēt kaut ko līdzīgu Cigvins . vai izmantojiet dubultās sāknēšanas Linux sistēmu vai instalējiet kaut ko līdzīgu Samba .



Tas viss mainījās operētājsistēmā Windows 10! Microsoft Windows veikalā ir pieejami vairāki Linux izplatījumi. Šis iepriekšējais Raksts Appuals par Kali Linux apraksta vienu šādu metodi, kā iegūt noteiktu Linux izplatīšanu jūsu Windows 10 vidē.



Viena no Linux skriptu izmantošanas priekšrocībām jūsu Windows datorā ir tā, ka uzdevumu automatizēšanai varat izmantot jaudīgo Linux skriptu valodu, it īpaši, ja esat vairāk pazīstams ar Linux skriptu, nevis sakām, Powershell vai Dos pakešfailiem. Šajā rakstā ir paskaidrots, kā rakstīt Linux “bash” skriptu, lai attīrītu tipisku Windows darbvirsmu. Ja esat jauns Linux lietotājs, jūs uzzināsiet pamatus no šī raksta un šajā procesā izveidosiet noderīgu lietderību.



Mēs izmantosim pamata Ubuntu Linux termināli (pieejams Windows veikalā operētājsistēmā Windows 10), kas ļauj izmantot bash, k ssh, git, apt un daudzas citas Linux komandas. Tas būs jāinstalē, ja vēl neesat to izdarījis. Metode ir izskaidrota šeit .

Linux komandrindas

Kad esat instalējis Ubuntu un palaidis to, jūs saņemsiet komandrindas logu, līdzīgu šim. Tas jums dos bash Linux, komandrindu:



Tagad mēs uzrakstīsim savu scenāriju. Failu var rediģēt ar jebkuru redaktoru, ieskaitot Windows redaktoru, piemēram, notepad, vai Linux redaktoru, piemēram, vi, ja esat pārliecināts, ka to izmantojat.

Atverot Ubuntu termināli, jūsu atrašanās vieta būs jūsu mājas katalogs Ubuntu darbvietā. To var pārliecināties, komandu uzvednē ievadot komandu:

echo $ HOME

un tas izvadīs jūsu mājas direktoriju, kā parādīts nākamajā ekrānuzņēmumā. Linux formātā tiek izmantoti slīpsvītras uz priekšu, kas attēlo direktorijus, piemēram, “/”.

Ērtības labad mēs ievietosim skriptu mājas direktorijā.

Nākamais solis ir noskaidrot darbvirsmas atrašanās vietu, jo tā ir pazīstama kā Linux ceļš. Tas mums būs nepieciešams, lai veiktu darbības ar failiem pareizajā direktorijā.

Termināla tipā “cd /”. Tādējādi jūs nokļūsiet Ubuntu vides saknes zonā.

Pēc tam ierakstiet “ls”

Šeit ir uzskaitīti visi Linux direktoriji. Linux terminālī jūs redzēsiet kaut ko līdzīgu:

Mums jāatrod jūsu lietotāja darbvirsma. Pieņemot, ka tas atrodas C diskā, nomainiet direktoriju “mnt”. Šeit tiks identificēti Windows diski:

Pēc tam jums jāzina, kurā direktorijā atrodas jūsu darbvirsma. To parasti var atrast logos, ar peles labo pogu noklikšķinot uz darbvirsmas ikonas, piemēram, no File Explorer saraksta “Ātrā piekļuve”. Tiks parādīta darbvirsmas direktorijas atrašanās vieta:

Tādējādi jūs varat pārslēgties uz direktoriju, izmantojot terminālu Linux:

Tādēļ šajā piemērā jūs ievadāt termināli, atceroties, ka Windows slīpsvītras ir vienādas ar priekšējām slīpsvītrām Linux. Manā gadījumā komandā “mainīt direktoriju” nepieciešamais ceļš ir šāds:

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

Tad jūs varat uzskaitīt visus failus uz darbvirsmas, izmantojot “ls”:

Ja tas ir kaut kas līdzīgs manam darbvirsmai, jūs saņemsiet garu šādu failu sarakstu:

Šeit redzams, cik netīrs mans darbvirsma izskatās sistēmā Windows:

Manos pārējos 2 monitoros bija vairāk ikonu, tāpēc mums šie faili ir jāklasificē un jāsakārto! Norādītais skripts uzņems katru faila tipu un ievietos tos darbvirsmas attiecīgajā nosauktajā mapē.

Piemēram, īsceļu faili, tie būs * .lnk faili, tāpēc mēs tos pārvietosim uz mapi ar nosaukumu “SHORTCUTS”.
Tāpat attēlu faili, piemēram, .jpg, .png, .bmp, .svg, tiks pārvietoti uz mapi ar nosaukumu “IMAGES”.
Dokumenti un Office dokumenti, piemēram, vārdu faili, piemēram, .docx, .pdf, .xls, tiks ievietoti mapē ar nosaukumu “OFFICEDOCS”.

Tātad, palaižot skriptu, visi dokumenti būs organizēti pieejami attiecīgajā direktorijā, kas izveidots šai failu kategorijai. Tas netraucēs darbvirsmu un padarīs darbvirsmas failus organizētākus. Jūs varat izveidot tik daudz mapju tipu un definēt failu kritērijus, cik vēlaties. Faili nav jāsakārto tikai pēc faila veida, jūs varat izveidot kategoriju mapes, kā vēlaties, piemēram, “HRFILES” un “PROJECTFILES”. Šajā piemērā mēs sakārtosim failus pēc to faila veida.

Kategoriju un failu saraksta izveide

Lai izmantotu šo lietojumprogrammu, mums būs nepieciešami 2 faili:

A) Kategoriju un failu tipu saraksts, lai iekļūtu kategorijās, kas atrodas komatatdalītā CSV failā. Katras kategorijas nosaukums būs direktorija nosaukums, kurā faili tiks ievietoti darbvirsmā. CSV failu var izveidot ar jebkuru vēlamo redaktoru. Šajā piemērā mēs izmantosim piezīmju bloku.
B) Linux skripts, kas nolasīs kategorijas failu un apstrādās nepieciešamo kārtības funkciju.

Lai izveidotu failu pašreizējā direktorijā, izmantojot termināla veidu:

notepad cleanup.csv

Tā kā fails šajā posmā nepastāv, tas pieprasīs izveidot jaunu failu, tāpēc vienkārši nospiediet “Jā”.

Tagad katrai kategorijai ievadīsim šādu informāciju formātā “category, filetype1, filetype2, filetype3,… utt.” 1:

ĪSUMI, lnk 
ATTĒLI, jpg, png, svg
DOKUMENTI, txt, docx, doc, pdf

Pirmais lauks būs darbvirsmas direktorija nosaukums, kurā tiks izvietoti atlikušie failu tipi. Atlikušie lauki ir failu tipi, kurus vēlaties pārvietot uz mapi.

Tāpēc mapē SHORTCUTS visi * .lnk faili tiks pārvietoti uz šo mapi. Mapē IMAGES visi faili ar * .jpg, *. Png un * .svg tiks pārvietoti uz mapi IMAGES. Visbeidzot, mēs visus * .txt, *. Docx, *. Doc un * .pdf failus pārvietojam uz mapi DOCUMENTS. Tādā veidā mēs kārtojam failus pareizajos direktorijos.

Kad esam izveidojuši CSV failu, esam gatavi rakstīt skriptu. Mēs sauksim skriptu cleanup.sh. Starp citu, šim skriptam būs minimāla validācija, tāpēc jums jāpārliecinās, vai CSV fails ir pareizā formātā, pretējā gadījumā tas nedarbosies! Viss, ko mēs darīsim šajā skriptā, ir pārbaudīt, vai faili un mapes pastāv, kā minimālu pārbaudi.

Varat rediģēt skriptu terminālā, ja zināt Unix tipa redaktorus, piemēram, vi, vai varat vienkārši izmantot piezīmju bloku:

notepad cleanup.sh

Skripta darbība ir iestatīt CSV faila nosaukumu, kuru mēs lasām skriptā, un darbvirsmas atrašanās vietu, kuru mēs vēlamies tīrīt. Mēs iestatīsim mainīgos uz attīrīšanas CSV failu un darbvirsmas atrašanās vietu. Manā gadījumā tas ir šāds. Jums būs jānomaina darbvirsmas atrašanās vieta. Lūdzu, ņemiet vērā, ka viss, kas atrodas starp “”, ir vietturis, kurā jāievada sava konkrētā informācija.

Tātad. pirmās 2 skripta rindiņas ir:

DESKTOP = / mnt / c / Lietotāji // Darbvirsma 
CSV = tīrīšana.csv

Pilns skripts ir redzams zemāk. Lūdzu, izlasiet komentārus, ja vēlaties saprast komandas, un, ja neesat pārliecināts par komandu, Linux komandrindā izmēģiniet “man”, lai gūtu plašāku ieskatu komandas darbībā.

Padariet tīrīšanas skriptu izpildāmu un palaidiet to

Lai palaistu skriptu no mājas komandrindas, tas būs jāpadara izpildāms ar šādu komandu:

chmod + x cleanup.sh

Lai palaistu skriptu, jums būs jāievada šāda informācija, kā tas ir pašreizējā direktorijā.

./cleanup.sh

Lūk, kā mans darbvirsma izskatījās pirms un pēc skripta palaišanas. Var redzēt, ka mapes ar pārvietotajiem failiem tagad ir izveidotas un darbvirsma ir daudz mazāk pārblīvēta:

Pirms: Pēc:

un direktoriju SHORTCUTS ar visām saīsnēm, kas pārvietotas no darbvirsmas.

Pilna darbvirsmas Tidy Linux skripts operētājsistēmai Windows

Lūdzu, ņemiet vērā komentārus, kas pirms skripta ir pievienoti ar “#”, jo tie izskaidro skripta darbību. # Iestatiet mainīgos lokālās darbvirsmas vai jebkura direktorija atrašanās vietai, kuru vēlaties iztīrīt, un CSV faila nosaukumam.

DESKTOP = / mnt / c / Users / gofor / OneDrive / Desktop 
CSV = tīrīšana.csv

# Pārbaudiet, vai nav tīrīšanas csv faila, izmantojot linux komandu “test” un karodziņu “-f” faila pastāvēšanai.
# Ja faila nav, izvadiet kļūdas ziņojumu un pēc tam aizveriet skriptu.

ja [! -f $ {CSV}] 
echo Cleanup.csv fails nepastāv.
izeja -1
būt

# Tagad konvertējiet CSV, ja tas ir saglabāts dos formātā Unix formātā, noņemot karietes atgriešanās rakstzīmes.
# Saglabājiet izvadi pagaidu failā, pēc tam pārdēvējiet pagaidu failu atpakaļ uz sākotnējo nosaukumu.

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

# Tagad iet cauri CSV failam pa rindai un saglabājiet pirmā argumenta nosaukumu, kas ir
# category / directory name, uz kura visi atlikušie argumenti ir failu tipi
# ievietots šajos direktorijos.

kamēr lasu csvline 
darīt
skaits = 1
faila tipam 'echo' $ csvline '| tr, ' n'`
darīt
ja [$ count -eq 1], tad
# Tā kā šis ir pirmais arguments, pārbaudiet, vai mape jau pastāv, un, ja nē, izveidojiet to.
ja [! -d $ {DESKTOP} / $ faila tips]
# Katalogs nepastāv, tāpēc mēs to izveidosim.
mkdir $ {DESKTOP} / $ faila tips
būt
CATEGORY = $ {filetype}
cits
# Izdodiet draudzīgu ziņojumu, kurā norādīts, ko skripts dara.
atbalss 'pārvietojas *. $ {filetype} uz $ {CATEGORY}'
# Pārvietojot failus, nerādiet kļūdu ziņojumus (t.i.,> 2 / dev / null), ja faili nepastāv,
# tātad komanda “mv” ir “klusa”.
mv $ {DESKTOP} /*.$ {filetype} $ {DESKTOP} / $ {CATEGORY} 2> / dev / null
būt
skaits = 'expr $ skaits + 1'
izdarīts
izdarīts< cleanup.csv
Lasītas 7 minūtes