Téma Jannah Licencia nie je overená. Prejdite na stránku možností témy a overte licenciu. Pre každý názov domény potrebujete jednu licenciu.

Výhody použitia WSL oproti PowerShellu v príkazovom riadku systému Windows

Prečo uprednostňujem používanie WSL pred PowerShellom pre príkazový riadok systému Windows

Mnoho vývojárov sa pýta, ktorá z nich je najlepšia voľba medzi WSL a PowerShellom pri práci s príkazovým riadkom systému Windows. Rozdiel sa neobmedzuje len na odlišné rozhranie, ale zahŕňa aj spôsob vykonávania príkazov a možnosť spúšťať nástroje systému Linux priamo v systéme Windows. Táto kombinácia dvoch prostredí otvára flexibilnejší a výkonnejší zážitok, vďaka čomu je WSL obľúbeným medzi mnohými používateľmi, ktorí hľadajú rýchlosť a výkon integrovaný s modernými vývojovými nástrojmi.

Výhody použitia WSL oproti PowerShellu v príkazovom riadku systému Windows

Vo Windowse, keď chcem príkazový riadok, môžem si vybrať medzi natívnym PowerShellom alebo inštaláciou Windows Subsystem for Linux. Pri používaní Windowsu uprednostňujem druhú možnosť. Preto používam rozhranie Linuxu namiesto PowerShellu.

Stále viac sa oboznamujem s Linuxom.

wsl-terminal-windows Výhody použitia WSL oproti PowerShellu v príkazovom riadku systému Windows

Jedným z dôvodov, prečo som zostal pri WSL vo Windowse, a to až do takej miery, že ho inštalujem na každý nový počítač s Windowsom, ktorý si kúpim, namiesto PowerShellu, je to, že paradigma Linuxu a Unixu mi je známejšia. V 90. rokoch som používal MS-DOS a v starších verziách Windowsu som občas používal príkazový riadok, ale čo sa týka príkazového riadku, bol to Unix, ktorý si získal moju fantáziu svojimi exotickými príkazmi ls, pwd a cd.

Táto cesta sa, dosť zvláštne, začala na Macu, ktorý bol a zostáva poprednou platformou na tvorbu médií, keď som študoval komunikáciu. Jedného dňa som sa rozhodol preskúmať terminál macOS, respektíve Mac OS X. Tam som sa naučil, ako sa pohybovať v priečinkoch a vytvárať súbory vo Vime. Zdá sa, že som jedným z mála ľudí, ktorí vedia, ako Vim používať. Alebo aspoň by som to vedel, keby som chcel.

Vyzbrojený znalosťou Unixu som rýchlo spustil disk Knoppix a konečne som ho pripojil k internetu po pripojení k routeru Airport (áno, Apple kedysi vyrábal routery a na prelome tisícročí prakticky zaviedol Wi-Fi). To ma priviedlo k skúmaniu linuxových distribúcií, čo ma nakoniec priviedlo k písaniu pre HTG.

Prečítajte si tiež:  4 najlepšie spôsoby, ako urobiť snímku obrazovky celej stránky vo Firefoxe

Moje znalosti Linuxu a Unixu sú príliš cenné na to, aby som ich premárnil učením sa niečoho úplne odlišného od iných rozhraní príkazového riadku.

PowerShell vyzerá zvláštne.

powershell-pipeline-error Výhody použitia WSL oproti PowerShellu v príkazovom riadku systému Windows

Nikdy som úplne nepochopil PowerShell. Zdá sa, že sa snaží radikálne odlišovať od tradičnej paradigmy Unixu a Linuxu. V Linuxe pracujete s čistým textom. Textový vstup a výstup je možné presmerovať do iných programov a súborov. To dáva unixovému štýlu programovania jeho silu a je to základná súčasť „unixovej filozofie“.

Naproti tomu PowerShell je navrhnutý ako objektovo orientovaný. Keď v PowerShelle píšete kanál, pracujete s objektom, a nie s textovým prúdom.

Syntax príkazového riadka sa mi vždy zdala trochu dlhá. Veľmi oceňujem, že Microsoft „zlúčil“ niektoré bežné príkazy do kratších príkazov pre MS-DOS a Unix. Zdá sa, že si Microsoft uvedomil, že by to mohol byť tiež problém.

Linux má väčší záujem vývojárov.

Výhody použitia WSL namiesto PowerShellu v príkazovom riadku systému Windows

Linux, alebo skôr Unix, si získal nielen moju predstavivosť, ale aj predstavivosť zvyšku vývojárskej komunity. Ak čítate akúkoľvek knihu o programovaní, pravdepodobne používate prostredie podobné Unixu. Bude to buď inštalačné prostredie Linuxu, alebo macOS. Prečítajte si články na Hacker News. Úryvky príkazového riadka často začínajú znakom „$“, ktorý označuje predvolenú používateľskú výzvu pre väčšinu rozhraní API podobných Unixu, alebo znakom „#“ (krížik), ktorý označuje, že príkaz je navrhnutý na spustenie ako superpoužívateľ. Systémy podobné Unixu, vrátane macOS, Ubuntu a ďalších systémov podobných Linuxu, sú v prieskume vývojárov Stack Overflow veľmi vyhľadávané.

Pozrite sa na notebook vývojára a uvidíte, že na ňom beží buď terminálové okno Macu, alebo nejaký druh Linuxového API. Preto spoločnosť Microsoft v prvom rade vytvorila WSL: paradigma Unixu je medzi programátormi populárna. Je to to, čo sa vývojári učia na hodinách informatiky na univerzite. Je to to, na čom stavajú svoje projekty vo svojom voľnom čase. Generácia vývojárov získala rozsiahle skúsenosti s používaním open source nástrojov, ktoré bežia na Linuxe, a nemá záujem o programovanie na nástrojoch .NET.

Prečítajte si tiež:  Spustite jednoducho viacero operačných systémov pomocou QEMU

Keď vývojári vytvárajú reálny projekt, na čom ho postavia: v Linuxe alebo PowerShelle? Je zrejmé, že prvý bude preferovanou voľbou. Preto sa aj vo Windowse venujem učeniu sa programovacieho jazyka WSL.

Ak by som sa chcel naučiť nový programovací jazyk alebo nástroj podľa knihy alebo tutoriálu, som si istý, že ak by som to chcel urobiť vo Windowse, mohol by som otvoriť okno WSL a sledovať program. Nie som si istý, či je to možné z okna PowerShellu.

Linux sa zdá byť prenosnejší

Hoci Microsoft zdôrazňuje, že PowerShell je multiplatformový, open source a dostupný v Linuxe, nie je jasné, prečo by niekto chcel používať PowerShell v Linuxe.

Rozhrania Linuxu majú výhodu v tom, že sú predinštalované v linuxových distribúciách. PowerShell je potrebné nainštalovať oddelene od systému. Ak ho niektorá linuxová distribúcia integruje ako predvolené rozhranie, rád ho otestujem a zrecenzujem pre budúci článok.

Dokonca aj vo Windowse, ktorý zrejme uprednostňuje PowerShell, môžem získať rozhranie pre Linux. Toto platilo roky predtým, ako sa WSL stal dostupným. Cygwin, MinGW a UWIN dokázali poskytnúť funkcie podobné Unixu vo Windowse. Na portovanie príkazového riadka do Linuxu sa vynaložilo len málo úsilia.

Vďaka mojej znalosti príkazového riadku Linuxu môžem spúšťať príkazy sám a dokonca aj skripty bez toho, aby som ich musel upravovať. To isté sa nedá povedať naopak.

Väčšina programov príkazového riadku je v prvom rade zameraná na Linux.

Keďže Linux dominuje mysliam vývojárov, zdá sa, že nové nástroje príkazového riadku sú primárne písané pre unixové systémy, najmä pre Linux. To nie je prekvapujúce vzhľadom na počet serverov s Linuxom.

Nové servery, interpretery, debuggery, editory a IRC klienti sa stále píšu pre Linux. Zdá sa, že sa pomaly dostávajú do Windowsu prostredníctvom PowerShellu. Keď sa už objavia, zvyčajne je to prostredníctvom WSL. Pravdepodobne na to existuje technický dôvod. Po mnoho rokov systém Windows nemal skutočnú virtuálnu konzolu, čo sťažovalo portovanie mnohých populárnych terminálových aplikácií do Windowsu. Projekt WSL bol impulzom pre konečné prenesenie tohto dôležitého softvéru do Linuxu, podľa príspevku na Blog spoločnosti Microsoft.

Prečítajte si tiež:  Čo znamená, že váš priateľ nie je na Facebooku Messenger

Používam WSL, pretože mi poskytuje jednoduchý prístup k nástrojom, na ktoré sa spolieham.

Microsoft PowerShell je primárne určený ako nástroj pre IT administrátorov na správu desktopov a serverov, nie ako prostriedok na spúšťanie skutočných programov v termináli, hoci dosiahol významný pokrok pridaním nástrojov ako OpenSSH do predvolenej inštalácie systému Windows.

Viem spravovať Windows z Linuxu

wsl-windows-drive-ls Výhody použitia WSL oproti PowerShellu v príkazovom riadku systému Windows

Hoci Microsoft tvrdí, že PowerShell je najlepší spôsob správy systému Windows z príkazového riadku, a to až do takej miery, že nahradil starý príkazový riadok, mnohé úlohy, na ktoré by som používal PowerShell, môžem vykonávať inštaláciou WSL.

Inštalácie WSL umožňujú prístup k systému Windows z Linuxu cez adresár /mnt. To znamená, že v mojej hlavnej inštalácii Windowsu na disku C:\ môžem spúšťať všetky svoje obľúbené nástroje Linuxu v priečinkoch a súboroch Windowsu. Nemusím sa zaoberať zvláštnosťami PowerShellu. Z príkazového riadka Linuxu môžem spúšťať aj bežné programy Windowsu.

Môžem to urobiť pomocou všetkých svojich obľúbených nástrojov a linuxových programov, ktoré som sa naučil na iných systémoch, a zároveň spúšťať populárne aplikácie, ako sú hry z Windowsu. Aj keď je na Linuxe viac hier a Proton sa neustále vyvíja, stále sa nájdu neskoro prichádzajúci, ktorí sa neobťažujú písať „make“ zo svojho terminálu.

Keďže ako dlhoročný používateľ unixových systémov poznám WSL lepšie, pri používaní Windowsu ho budem používať namiesto PowerShellu. Môže to byť spôsobené predchádzajúcimi znalosťami, ale keďže sa Linux stáva čoraz rozšírenejším v technologickom svete, pravdepodobne ho budem celkom dobre oboznámený.

Prechod na WSL neznamená úplné opustenie PowerShellu, ale vývojárom poskytuje viac možností a výkonnejšie nástroje na spracovanie moderných projektov. Výber správneho prostredia závisí od povahy vašej práce, ale rýchly prehľad WSL rýchlo odhalí, prečo sa stal preferovanou voľbou toľkých vývojárov.

Prejsť na horné tlačidlo