Mighty Shell Hate Post

Dolgo nazaj sem napisal preprost skript, ki je izbrisal vse podimenike z danimi imeni v določenem imeniku:

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

Že dolgo ga nisem uporabljal, zdaj pa sem ga potreboval. Zaženem - nič se ne izbriše.

"WTF?", si mislim. Začel sem kopati. Poigraval sem in poigraval, pregledal vse, vnaprej ustvaril seznam in spremenil imena - še vedno se nič ne izbriše. Končno sem v njihovem dokumentu prebral: "Pravzaprav je -Include hrošč, če se uporablja v povezavi z -Recurse, zato uporabite konstrukcijo bergle.":

Ker ima parameter Recurse v Remove-Item znano težavo, ukaz v tem primeru uporabi Get-ChildItem za pridobitev želenih datotek, nato pa uporabi operaterja cevovoda, da jih posreduje Remove-Item.

No, v redu, prepisal sem ga s to berglo. Hudičev dogovor - nič ne izbriše. Še več, Get-ChildItem с -Vključi vrača praznino. Še enkrat, ne glede na to, kaj sem naredil, ne glede na to, kako sem popačil parametre, ni delovalo. Glavna stvar je s -Izključi deluje, a z -Vključi ni šans. Za to sem porabil cel dan: ves čas sem razmišljal, da sem nekje v parametrih zajebal, da nisem upošteval neke zapletene nianse. In kaj se je zgodilo na koncu? Namestil sem jih na PS7.1 in je delovalo. Vsebuje celo prvo možnost uporabe brez bergle Odstrani-predmet zaslužil. Na splošno se je izkazalo, da je njihova napaka.

Ker pa sem trpel zaradi njihove mogočne lupine, sem šel v Google, da bi prebral, zakaj ima njihova lupina tako osupljivo sintakso. Prekleto, pozicionirajo ga kot .NET za konzolo, C# sintakse pa niti ne povohajo. Namesto njega…

Kakorkoli, naletel sem na ta članek: "Kaj sovražim pri PowerShell". Kot pravijo: "Ne bi se mogel bolj strinjati."

Sumim, da je ekipa Mighty Shell kup oboževalcev Basha.

- Končno naredimo konzolo za Windows, v kateri lahko pišete kompleksne skripte. Sicer pa je naš cmd zastarel, tako da nas je že kar malo sram.
- Dajmo! Na podlagi česa bomo naredili? VBScript, JScript že imamo. Končno imamo jezike za .NET: C#, VB. Morda lahko to naredimo v C#? Mislim, uporabili bomo C# kot skriptni jezik za našo konzolo. Poleg tega želimo tja dodati razrede .NET.
- Ne, kaj počneš, stari, kakšen C#? Pravi geeki uporabljajo bash! Naredimo torej bash za Windows. Ne zanima me, da je sintakso za bash očitno napisala množica napuščenih hipsterjev v šestdesetih letih prejšnjega stoletja. Na splošno velja, da bolj ko je zapleteno, tem bolje! Intuitivnost je za slabiče! Pri pisanju pisave v našem jeziku mora uporabnik prekleti vse na svetu in si izmisliti par novih kletvic. Samo tak jezik ima pravico do življenja. Poglejte, ljudje z Linuxom tako živijo vse življenje in od vsega tega so nerazložljivo navdušeni. Zakaj smo kaj slabši?

V anketi lahko sodelujejo samo registrirani uporabniki. Prijaviti se, prosim.

Ali uporabljate PowerShell in vam je všeč?

  • 30,3%Ne uporabljam 40

  • 29,6%Poskusil sem in ni mi bilo všeč39

  • 23,5%Uporabljam ga in sem zadovoljen z vsem31

  • 12,9%Uporabljam ga, vendar nisem zadovoljen17

  • 3,8%Hura! Končno lahko uporabljam svoj najljubši bash v sistemu Windows!5

Glasovalo je 132 uporabnikov. 26 uporabnikov se je vzdržalo.

Vir: www.habr.com

Dodaj komentar