Příspěvek Mighty Shell Hate

Před dlouhou dobou jsem napsal jednoduchý skript, který odstranil všechny podadresáře s danými názvy v zadaném adresáři:

Remove-Item * -Force -Recurse -Include name1,name2,name3 -ErrorAction SilentlyContinue

Dlouho jsem ho nepoužíval, ale teď jsem ho potřeboval. Spustím to - nic se nesmaže.

"WTF?", myslím. Začal jsem kopat. Flákala jsem a makala, vše procházela, předem si vytvořila seznam a měnila jména – stále se nic nemaže. Nakonec jsem v jejich dokumentu četl: "Ve skutečnosti je -Include chybné, když se používá ve spojení s -Recurse, takže použijte konstrukci berličky.":

Protože parametr Recurse v Remove-Item má známý problém, příkaz v tomto příkladu používá Get-ChildItem k získání požadovaných souborů a poté používá operátor kanálu k jejich předání Remove-Item.

Dobře, přepsal jsem to pomocí této berličky. Zatracená dohoda – nic nesmaže. Navíc, Get-ChildItem с -Zahrnout vrací prázdnotu. Opět, bez ohledu na to, co jsem udělal, bez ohledu na to, jak jsem zkreslil parametry, nefungovalo to. Hlavní věc je s -Vyloučit funguje, ale s -Zahrnout v žádném případě. Strávil jsem nad tím celý den: pořád jsem si říkal, že někde v parametrech jsem to podělal, že jsem nevzal v úvahu nějakou záludnou nuanci. A co se nakonec stalo? Nainstaloval jsem je na PS7.1 a fungovalo to. Obsahuje dokonce první možnost bez berlí pouze pomocí Odebrat položku vydělal. Obecně se ukázalo, že je to jejich chyba.

Ale protože jsem trpěl s jejich Mighty Shell, šel jsem do Googlu, abych si přečetl, proč má jejich shell tak ohromující syntaxi. Sakra, umisťují to jako .NET pro konzoli, ale ani necítí syntaxi C#. Místo toho...

Každopádně jsem narazil na tento článek: "Co nesnáším na PowerShellu". Jak se říká: "Nemohl jsem více souhlasit."

Mám podezření, že tým Mighty Shell je parta fanoušků Bash.

- Pojďme to konečně udělat Windows Konzole, kde můžeme psát složité skripty. Naše cmd je tak zastaralá, že se už trochu stydíme.
- Pojďme! Na základě čeho budeme dělat? Již máme VBScript, JScript. Konečně tu máme jazyky pro .NET: C#, VB. Možná to můžeme udělat v C#? Myslím tím, že jako skriptovací jazyk pro naši konzoli použijeme C#. Navíc tam chceme přidat třídy .NET.
— Ne, no tak, kámo, co je to za C#? Opravdoví geekové používají bash! Tak si udělejme bash pro… WindowsNevadí, že syntaxi bash zřejmě napsala banda zhulených hipsterů v 1960. letech. V podstatě čím složitější, tím lepší! Intuitivnost je pro slabochy! Když uživatel píše skript v našem jazyce, je nutně zvykem proklínat všechno pod sluncem a vymýšlet pár nových nadávek. Jen takový jazyk má právo existovat. Podívejte se na ty uživatele Linuxu, ti takhle žijí celý život a mají z toho nepopsatelné vzrušení. A proč jsme my horší?

Průzkumu se mohou zúčastnit pouze registrovaní uživatelé. Přihlásit se, prosím.

Používáte PowerShell a vyhovuje vám?

  • 30,3%Nepoužívám 40

  • 29,6%Zkoušel jsem to a nelíbilo se mi to 39

  • 23,5%Používám ho a jsem se vším spokojený31

  • 12,9%Používám to, ale nejsem spokojený 17

  • 3,8%Hurá! Konečně můžu Windows Použijte svůj oblíbený bash!5

Hlasovalo 132 uživatelů. 26 uživatelů se zdrželo hlasování.

Zdroj: www.habr.com

Kupte si spolehlivý hosting pro stránky s DDoS ochranou, VPS VDS servery 🔥 Kupte si spolehlivý webhosting s ochranou DDoS, VPS VDS servery | ProHoster