Mighty Shell Post нафрат

Чанде пеш ман як скрипти оддиеро навиштам, ки ҳамаи зеркаталогҳоро бо номҳои додашуда дар феҳристи муайян нест карда буд:

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

Ман онро муддати тӯлонӣ истифода накардаам, аммо ҳоло ба ман лозим буд. Ман онро оғоз мекунам - ҳеҷ чиз нест карда намешавад.

"WTF?", Ман фикр мекунам. Ман кофтанро сар кардам. Ман скрипка мекардам, ҳама чизро аз назар гузаронидам, пешакӣ рӯйхат тартиб додам ва номҳоро иваз кардам - ​​то ҳол чизе нест карда нашудааст. Ниҳоят, дар ҳуҷҷати онҳо ман хондам: "Воқеан, -Include ҳангоми дар якҷоягӣ бо -Recurse истифодашаванда хатост, бинобар ин сохтори асобаро истифода баред.":

Азбаски параметри Recurse дар Remove-Item масъалаи маълум дорад, фармон дар ин мисол барои гирифтани файлҳои дилхоҳ Get-ChildItem-ро истифода мебарад ва сипас оператори қубурро барои интиқоли онҳо ба Remove-Item истифода мебарад.

Хуб, ман онро бо истифода аз ин асобача аз нав навиштам. Як созишномаи ҷаҳаннам - он чизеро нест намекунад. Гузашта аз ин, Get-ChildItem с - дохил кунед холиро бармегардонад. Боз, новобаста аз он ки ман чӣ кор кардам, новобаста аз он ки ман параметрҳоро чӣ гуна таҳриф кардам, он кор накард. Чизи асосй бо - Истисно кунед кор мекунад, вале бо - дохил кунед ҳеҷ роҳе. Ман як рӯзи пурраро дар ин кор сарф кардам: ман ҳамеша фикр мекардам, ки дар ҷое дар параметрҳое, ки ман вайрон кардаам, ягон нозукиҳои ҷолибро ба назар нагирифтаам. Ва дар охир чӣ шуд? Ман онҳоро дар PS7.1 насб кардам ва он кор кард. Он ҳатто дорои варианти аввалини асилро танҳо бо истифода аз Хориҷ - Элемент ба даст овардаанд. Умуман, ин хатои онҳо буд.

Аммо вақте ки бо Shell Mighty худ азоб кашидам, ман ба Google рафтам, то бифаҳмам, ки чаро қабати онҳо чунин синтаксиси ҳайратангез дорад. Бале, онҳо онро ҳамчун .NET барои консол ҷойгир мекунанд, аммо онҳо ҳатто бӯи синтаксиси C # намебинанд. Ба ҷои ӯ…

Ба ҳар ҳол, ман ба ин мақола дучор омадам: "Он чизе ки ман дар бораи PowerShell нафрат дорам". Тавре мегӯянд: "Ман дигар розӣ шуда наметавонистам."

Ман гумон мекунам, ки дастаи Mighty Shell як гурӯҳи мухлисони Баш аст.

- Биёед дар ниҳоят барои Windows як консол созем, ки дар он шумо скриптҳои мураккабро нависед. Дар акси ҳол, cmd-и мо кӯҳна шудааст, ки мо аллакай каме шарм дорем.
— Биёед! Мо дар асоси чӣ кор хоҳем кард? Мо аллакай VBScript, JScript дорем. Ниҳоят, мо барои .NET забонҳо дорем: C#, VB. Шояд мо онро дар C# карда метавонем? Дар назар дорам, ки мо C# -ро ҳамчун забони скрипт барои консоли худ истифода хоҳем кард. Гузашта аз ин, мо мехоҳем дар он ҷо синфҳои .NET илова кунем.
-Не, ту чӣ кор карда истодаӣ, дугона, чӣ C#? Гекҳои воқеӣ bash-ро истифода мебаранд! Пас, биёед bash-ро барои Windows созем. Ба ман парвое надорам, ки синтаксиси bash аз афташ аз ҷониби издиҳоми хипстерҳои сангсор дар солҳои 1960 навишта шудааст. Умуман, чӣ қадар мураккабтар бошад, ҳамон қадар беҳтар аст! Интуитивӣ барои сустиҳост! Ҳангоми навиштани скрипт ба забони мо корбар бояд ҳама чизро дар ҷаҳон лаънат кунад ва як-ду калимаи нави лаънатӣ ихтироъ кунад. Танҳо чунин забон ҳақи зиндагӣ дорад. Инак, одамони Linux тамоми умри худ ҳамин тавр зиндагӣ мекунанд ва аз ин ҳама ҳаяҷонбахши нофаҳмо мегиранд. Чаро мо бадтарем?

Танҳо корбарони сабтиномшуда метавонанд дар пурсиш иштирок кунанд. даромад, Лутфан.

Оё шумо PowerShell-ро истифода мебаред ва оё шумо бо он бароҳат ҳастед?

  • 30,3%Ман 40 истифода намебарам

  • 29,6%Ман онро санҷидаам ва ба он маъқул нашуд39

  • 23,5%Ман онро истифода мебарам ва аз ҳама чиз қаноатмандам31

  • 12,9%Ман онро истифода мебарам, аммо ман хурсанд нестам17

  • 3,8%Ура! Дар ниҳоят ман метавонам bash дӯстдоштаи худро дар Windows!5 истифода барам

132 корбар овоз доданд. 26 корбар худдорӣ карданд.

Манбаъ: will.com

Илова Эзоҳ