Paano gamitin ang mga script ng Linux upang maayos ang Iyong Desktop sa Windows 10



Subukan Ang Aming Instrumento Para Sa Pagtanggal Ng Mga Problema

Nang una mong mabasa ang headline ng piraso na ito maaari kang patawarin para sa pag-iisip na ang isang bagay ay hindi wasto sa teknikal. Pagkatapos ng lahat, ang Linux ay hindi bahagi ng operating system ng Windows di ba? Ang mga ito ay dalawang ganap na magkakaibang mga operating system. Dati, ang tanging paraan lamang upang magamit ang Linux scripting sa Windows sa nakaraan ay ang alinman sa pag-install ng katulad nito Cygwin . o gumamit ng dalawahang boot Linux system o mag-install ng tulad Samba .



Ang lahat ng iyon ay nagbago sa Windows 10! Mayroong maraming pamamahagi ng Linux na magagamit sa Microsoft Windows Store. Itong nauna Artikulo ng mga appual sa Kali Linux Inilalarawan ang isang tulad na pamamaraan ng pagkuha ng isang tukoy na pamamahagi ng Linux sa iyong Windows 10 na kapaligiran.



Ang isa sa mga pakinabang ng paggamit ng mga script ng Linux sa iyong Windows machine ay maaari mong magamit ang makapangyarihang wika ng pag-script ng Linux upang i-automate ang mga gawain, lalo na kung mas pamilyar ka sa pagsulat ng Linux kaysa sabihin, Powershell, o mga file ng Dos batch. Ipinapaliwanag ng artikulong ito kung paano magsulat ng isang script na 'bash' sa Linux upang linisin ang isang tipikal na Windows Desktop. Kung bago ka sa Linux malalaman mo ang mga pangunahing kaalaman mula sa artikulong ito, at lumilikha ng isang kapaki-pakinabang na utility sa proseso.



Gumagamit kami ng isang pangunahing Ubuntu Linux Terminal, (magagamit sa Windows Store sa Windows 10 machine) na nagbibigay-daan sa iyo upang gumamit ng bash, k ssh, git, apt at maraming iba pang mga utos ng Linux. Kakailanganin itong mai-install kung hindi mo pa nagagawa. Ipinaliwanag ang pamamaraan dito .

Ang Linya ng Command ng Linux

Kapag na-install mo na ang Ubuntu at patakbuhin ito makakakuha ka ng isang window ng command line, katulad ng sumusunod. Bibigyan ka nito ng isang bash Linux, linya ng utos:



Isusulat na namin ang aming script. Maaari mong i-edit ang file sa anumang editor, kasama ang isang editor ng Windows tulad ng notepad, o isang editor ng Linux tulad ng vi kung tiwala kang gagamitin ito.

Kapag binuksan mo ang terminal ng Ubuntu, ang iyong lokasyon ay magiging iyong direktoryo sa bahay, sa workspace ng Ubuntu. Maaari itong matiyak sa pamamagitan ng pagpasok ng utos sa prompt ng utos:

echo $ HOME

at ilalabas nito ang iyong direktoryo sa bahay tulad ng ipinakita sa sumusunod na screenshot. Ang format ng Linux, ay gumagamit ng mga forward slash na kumakatawan sa mga direktoryo, tulad ng '/'.

Para sa kaginhawaan, ilalagay namin ang script sa direktoryo ng bahay.

Ang susunod na hakbang ay upang malaman ang lokasyon ng iyong desktop, tulad ng ito ay kilala bilang isang landas ng Linux. Kakailanganin namin ito upang maisagawa ang mga pagkilos sa mga file sa tamang direktoryo.

Sa uri ng terminal na 'cd /'. Dadalhin ka nito sa root area ng iyong kapaligiran sa Ubuntu.

Pagkatapos i-type ang 'ls'

Inililista nito ang lahat ng mga direktoryo sa Linux. Makakakita ka ng tulad nito sa Linux terminal:

Kailangan naming hanapin ang iyong user desktop. Ipagpalagay na ito ay nasa C drive, palitan ang direktoryo ng 'mnt'. Dito makikilala ang mga drive ng windows tulad nito:

Kailangan mong malaman kung aling direktoryo ang naninirahan sa iyong desktop. Karaniwan mong mahahanap ito sa mga bintana sa pamamagitan ng 'pag-right click' sa icon ng desktop tulad ng mula sa listahan ng 'Mabilis na pag-access' sa File Explorer. Ipapakita ang lokasyon ng iyong direktoryo ng desktop:

Mula dito, maaari kang magpalit sa iyong direktoryo gamit ang Linux sa terminal:

Samakatuwid, sa halimbawang ito, nagta-type ka sa terminal, na naaalala na ang mga backslashes sa Windows ay katumbas ng mga forward slash sa Linux. Sa aking kaso, ang landas na kinakailangan sa utos na 'baguhin ang direktoryo' ay:

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

Pagkatapos ay maaari mong ilista ang lahat ng mga file sa iyong desktop sa pamamagitan ng paggamit ng 'ls':

Kung ito ay anumang bagay tulad ng aking desktop makakakuha ka ng isang mahabang listahan ng mga file tulad nito:

Maaari mong makita kung gaano kalat ang hitsura ng aking desktop sa Windows dito:

Mayroong higit pang mga icon sa aking iba pang 2 monitor, kaya kailangan naming uriin at ayusin ang mga file na ito! Dadalhin ng script na ibinigay ang bawat uri ng file, at ilalagay ang mga ito sa isang nauugnay na folder sa desktop.

Kaya, halimbawa, mga shortcut file, ito ang magiging * .lnk na mga file, kaya ilipat namin ang mga ito sa isang folder na tinatawag na 'SHORTCUTS'.
Gayundin, ang mga file ng imahe, tulad ng .jpg, .png, .bmp, .svg ay ililipat sa isang folder na tinatawag na 'IMAGES'.
Ang mga dokumento at dokumento ng Opisina, tulad ng mga file ng salita hal. .Docx, .pdf, .xls, ay ilalagay sa isang folder na tinatawag na 'OFFICEDOCS'.

Kaya, kapag naipatakbo ang script, ang lahat ng mga dokumento ay magagamit sa isang organisadong pamamaraan, sa nauugnay na direktoryo, na nilikha para sa kategorya ng file na iyon. Aalisin nito ang desktop at gagawing mas maayos ang iyong mga file sa desktop. Maaari kang lumikha ng maraming mga uri ng folder at tukuyin ang mga pamantayan ng file na nais mo. Ang mga file ay hindi kailangang ayusin ayon sa uri lamang ng file, maaari kang lumikha ng mga folder ng kategorya ayon sa gusto mo, tulad ng 'HRFILES' at 'PROJECTFILES'. Sa halimbawang ito, aayusin namin ang mga file ayon sa kanilang uri ng file.

Lumilikha ng isang Kategoryo at Listahan ng File

Upang magamit ang application na ito, kakailanganin namin ang 2 mga file:

A) Isang listahan ng mga kategorya at uri ng file upang mapunta sa mga kategoryang gaganapin sa isang na-comminit na CSV file. Ang bawat pangalan ng kategorya ay magiging pangalan ng direktoryo na mailalagay ang mga file sa desktop. Maaari kang lumikha ng CSV file sa anumang ginustong editor. Sa halimbawang ito, gagamit kami ng notepad.
B) Isang script sa Linux na magbabasa ng kategorya ng file at iproseso ang kinakailangang pag-andar na malinis.

Upang lumikha ng isang file sa kasalukuyang direktoryo sa uri ng terminal:

paglilinis ng notepad.csv

Dahil ang file ay hindi magkakaroon sa yugtong ito, hihilingin nitong lumikha ka ng isang bagong file, kaya't pindutin lamang ang 'Oo'.

Ipapasok namin ngayon ang mga sumusunod na detalye, sa format na 'kategorya, filetype1, filetype2, filetype3,…, atbp' na linya ng 1 para sa bawat kategorya sa gayon:

SHORTCUTS, lnk 
Mga LARAWAN, jpg, png, svg
DOCUMENTS, txt, docx, doc, pdf

Ang unang patlang ang magiging pangalan ng direktoryo sa desktop, kung saan ilalagay ang mga natitirang uri ng file. Ang natitirang mga patlang ay ang mga uri ng file na nais mong ilipat sa folder.

Samakatuwid, para sa folder ng SHORTCUTS, lahat ng mga * .lnk file ay ililipat sa folder na iyon. Para sa folder na IMAGES, lahat ng mga file na may * .jpg, *. Png at * .svg ay ililipat sa folder na IMAGES. Sa wakas, inililipat namin ang lahat ng * .txt, *. Docx, *. Doc at * .pdf file sa folder na DOCUMENTS. Sa ganitong paraan, inaayos namin ang mga file sa tamang mga direktoryo.

Kapag nilikha namin ang CSV file, handa na kaming isulat ang script. Tatawagan namin ang script, cleanup.sh. Sa pamamagitan ng paraan, ang script na ito ay magkakaroon ng kaunting pagpapatunay, kaya dapat mong tiyakin na ang CSV file ay nasa tamang format, o hindi ito gagana! Ang gagawin lang namin sa script na ito ay upang suriin na ang mga file at folder ay mayroon, bilang isang maliit na tseke.

Maaari mong i-edit ang script sa terminal kung alam mo ang mga editor ng uri ng Unix, tulad ng vi, o maaari mo lamang gamitin ang notepad:

paglilinis ng notepad.sh

Ang aksyon ng script ay upang itakda ang pangalan ng CSV file na binabasa namin sa script, at ang lokasyon ng desktop na nais naming linisin. Magtatakda kami ng mga variable sa paglilinis ng CSV file, at sa lokasyon ng desktop. Sa aking kaso, ito ay ang mga sumusunod. Kakailanganin mong palitan ang lokasyon ng desktop para sa iyong sarili. Mangyaring tandaan, na ang anuman sa pagitan ng '' ay isang placeholder kung saan kailangan mong i-input ang iyong tukoy na impormasyon.

Kaya naman ang unang 2 linya sa script ay:

DESKTOP = / mnt / c / Users // Desktop 
CSV = paglilinis.csv

Ang buong script ay makikita sa ibaba. Mangyaring basahin ang mga komento kung nais mong maunawaan ang mga utos, at kung hindi ka sigurado sa isang utos, subukan ang 'tao' sa linya ng utos ng Linux, upang makakuha ng higit pang pananaw sa kung paano gumagana ang utos.

Gawing naisakatuparan ang cleanup script at patakbuhin ito

Upang patakbuhin ang script mula sa linya ng utos sa bahay, kakailanganin mong gawin itong naisakatuparan sa sumusunod na utos:

chmod + x paglilinis.sh

Upang patakbuhin ang script, kakailanganin mong i-type ang sumusunod, tulad nito sa kasalukuyang direktoryo.

./cleanup.sh

Narito kung paano tumingin ang aking desktop bago at pagkatapos na maipatakbo ang script. Maaari mong makita na ang mga folder na naglalaman ng mga inilipat na file ay nalikha na ngayon, at ang desktop ay mas mababa sa kalat:

Dati: Pagkatapos:

at ang direktoryo ng SHORTCUTS, kasama ang lahat ng mga shortcut na lumipat mula sa desktop.

Ang Buong Desktop Tidy Linux Script para sa Windows

Mangyaring tandaan ang mga komentong binago ng '#' sa script, habang ipinapaliwanag nila kung paano gumagana ang script. # Magtakda ng mga variable para sa lokasyon ng lokal na desktop o anumang direktoryo na nais mong linisin, at, ang pangalan ng CSV file.

DESKTOP = / mnt / c / Users / gofor / OneDrive / Desktop 
CSV = paglilinis.csv

# Subukan upang makita kung mayroon ang paglilinis ng csv file, sa pamamagitan ng paggamit ng isang linux na 'pagsubok' na utos at ang watawat na '-f' para sa pagkakaroon ng file.
# Kung ang file ay walang, output ng isang mensahe ng error at pagkatapos ay umalis sa script.

kung [! -f $ {CSV}] pagkatapos 
echo Ang cleanup.csv file ay wala.
exit -1
maging

# Ngayon i-convert ang CSV kung nai-save ito sa format na dos sa format na Unix sa pamamagitan ng pag-aalis ng mga character na bumalik sa karwahe.
# I-save ang output sa isang pansamantalang file, pagkatapos ay palitan ang pangalan ng pansamantalang file pabalik sa orihinal na pangalan.

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

# Ngayon, dumaan sa linya ng file ng CSV sa pamamagitan ng linya, at iimbak ang pangalan ng unang argumento, alin ang
# kategorya / pangalan ng direktoryo, kung saan, ang lahat ng natitirang mga argumento ay ang mga uri ng file na magiging
# na inilagay sa mga direktoryo na ito.

habang binabasa ang csvline 
gawin
bilangin = 1
para sa filetype sa `echo '$ csvline' | tr, ' n'`
gawin
kung [$ count -eq 1] pagkatapos
# Dahil ito ang unang argumento, suriin upang makita kung mayroon nang folder, at kung hindi, likhain ito.
kung [! -d $ {DESKTOP} / $ filetype] pagkatapos
# Wala ang direktoryo, kaya't gagawin namin ito.
mkdir $ {DESKTOP} / $ filetype
maging
CATEGORY = $ {filetype}
iba pa
# Maglabas ng isang maibigang mensahe na nagpapahiwatig kung ano ang ginagawa ng script.
echo 'paglipat *. $ {filetype} sa $ {CATEGORY}'
# Huwag ipakita ang anumang mga mensahe ng error (ibig sabihin>> 2 / dev / null) kapag inililipat ang mga file kung sakaling wala ang mga file,
# kaya't ang 'mv' utos ay 'tahimik'.
mv $ {DESKTOP} /*.$ {filetype} $ {DESKTOP} / $ {CATEGORY} 2> / dev / null
maging
count = `expr $ count + 1`
tapos na
tapos na< cleanup.csv
7 minuto basahin