Компания Microsoft представила выпуск командной оболочки 7.0, исходные тексты которой были открыты в 2016 году под лицензией MIT. Новый выпуск оболочки подготовлен не только для Windows, но и для Linux и macOS...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=52482
Вот серьёзно, кто-то пробовал ЭТО не под виндой?
Я и я очень доволен. Я не очень хорошо умею в эти ваши sed/awk и меня утомляет парсить текстовый вывод вместо использования объектного.
Если у тебя есть вопросы по делу - задавай.
Не правильно написал. Лучше так, я не осилю ЛЮБОЙ (что хочешь то и делаешь) парсинг текста и поэтому тупо воспользуюсь штатным (к примеру) ConvertTo-Json.Рассшифровываю - в случае awk тебе дается конструтор то что хочешь и лепи. В случае повер-шелла набор готовых методов бери и юзай, свой ты не осилишь написать.
Не очень понятно причем тут парсинг и json? Я именно про парсинг.
А свои модули писал в количестве около 3шт, это очень просто на самом деле если хоть немного умеешь кодить и есть понимание что такое ооп, писать на c# да. Всё что нужно уже в библиотеке (System.Management.Automation), добавляешь её, наследуешься и пишешь сугубо бизнес-логику своего командлета не думая вообще о инфраструктуре.
Ладно по другому спрошу. Вы что эти 3 модуля с собой на флешке таскаете ?
Залез ты на какой то сервак по ssh а там нет power-shell что дальше ?Скрипт на баше даже на голом vi ты всегда сделаешь.
Для своих модулей - свой корпоративный репозиторий.
Если я залез на свой корпоративный сервер, там то что мне нужно и в том числе powershell.
Если я залез на "какой-то" сервак и там нет powershell, я переживу.
Башист!!!
У меня баша нигде нет, только шелл скрипты реально переносимы
Пишу скрипты на рубях, шатают устои.
одобряю
Большинство скриптов на MacOS - Ruby. Чем плохи скрипты на Ruby? Обоснуйте, жду аргументы.
Слишком наворочен для мелкой системной автоматизации, крив и неуклюж для остального. В общем примерно как питон - может почти все. И все одинаково хреново.
> только шелл скрипты реально переносимыАга, ага особенно в виндах.
И в виндах, если принести с собой небольшой бинарник busybox for win32. И работают такие скрипты гораздо лучще чем CMD/BAT.
Тссс. Распугаете молодняк, которое не любит простых решений. Оно хочет лёгких, чтоб гуяк - и в продакшн.
> ...то очень просто на самом деле если хоть немного умеешь кодить и есть понимание что такое ооп.ООП в командной оболочке?
С инкапсуляцией, наследованием и полиморфизмом?
Вы что с дуба рухнули?
Вот така .йня малята.
Ну вообще - да. Все это в оболочке. А что?
То есть, наследуете Вы, скажем, 'ls' и перегружаете его, скажем, в 'ls -l' и все это вместо того, чтобы в ~/.bashrc поставить alias?
Ну это на первый взгляд покажется жутью, но там есть очень серьёзные плюсы.Представь, что у тебя в поток stdout валятся структуриованные объекты, а не текстовые данные. Работать с таким потоком удобнее как с объектами, а не как с кашей из данных. То есть технически можно всё это отконвертировать в текст, а потом grep/sed/awk, но зачем... Тут скорее от источника зависит.
Если ты сам формируешь эти объекты и сам их обрабатываешь - всё это целиком твой выбор. Если у тебя источник данных изначально запрограммирован себя так вести, то ps просто удобнее.
Ну и с запуском процессов и контролем над собственной оболочкой там проще и прозрачнее для тех кто любит ООП. Причем, для административных автоматизаций мне явно удобней питоньего зоопарка, но это вкусовщина.
Для простых случаев, когда скрипт легко, просто и элегантно пишется на bash, ps лучше не использовать, ну хотя бы лишь из-за многословности, в случае если по функциям это оверкилл.
> текстовые данные. Работать с таким потоком удобнее как с объектами, а
> не как с кашей из данных.При условии что планом было занятие хардкорным программизмом, а не мелкая автоматизация по месту всякой системной рутины. А если хотелось вон того - как раз мелкая развлекуха превратится в жесть и хардкор по причине "не удалось состыковать напрямую". Типы, видите ли, не те.
Для хардкорного програмизма, правда, есть навалом тулсей, да еще и получше, но о таких глупостях в MS не парятся, просто вываливают с лопаты и пытаются XD прожать рекламой. Но такой тул даже рекламой хрен прожмешь - не от мира сего. И пошел MS с позором имплементить WSL, ибо девелоперс, девелоперс - свалили в эти ваши пингвины чего-то вдруг.
> То есть технически можно всё это отконвертировать в текст, а потом grep/sed/awk,
> но зачем... Тут скорее от источника зависит.Правильно - вместо 2 минут кодинга и пинков пары утилит займемся хардкорным програмизмом на пару дней. Но зачем?!
> это целиком твой выбор. Если у тебя источник данных изначально запрограммирован
> себя так вести, то ps просто удобнее.Для администрирования и автоматизации это трэш и ад. А для програмизма есть и более вменяемые тулзы.
Почему человек, осиливший писать команды в шелле, не осилит написание на этом же языке скриптов/командлетов?
замаешься параметры выписывать
А зачем их вписывать руками? Оно же там специально сделано так, чтобы автоматом удобнее было их передовать. Это же не bash.
https://docs.microsoft.com/en-us/powershell/module/microsoft...
Только майкрософт может додуматься впереть дотнет и объекты в шелл. А потом оказывается что команды в километр длиной, при малорабочем автодополнении, а вон ту штуку никак не получается подружить с вон этой, потому что типами данных видите ли не вышли. Но, конечно, вы можете развернуть фабрику фабрик инструментов, запилить себе какой там еще краплет и все такое. Проблема в том что *никсоиды в результате решают задачи системного администрирования и автоматизации в 20 раз быстрее :D.
Это вам рабинович напел? Запилите мне "системное администрирование" AD в 20 раз быстрее чем на пышпыш.
> Это вам рабинович напел? Запилите мне "системное администрирование" AD в 20 раз
> быстрее чем на пышпыш.Так, собственно, линуксоиды так и делают. И скрипты будут только звать утилитки, а вот те уже внутрях как-нибудь разберутся. А не наворачивать, клять, ваши объекты, разведя энтерпрайз в aux вспомогаловке, которая вообще так, glue code между утилитами задумана. Но майкрософтовские додики не умеют в разделение уровней абстракций, из всего выходит кус оверинженернутых фекалий, мучительный и кривой.
//И таки я видел windows core server например. Надо было hardcore server называть, гораздо больше соответствует :)
Давайте мне примеров. Вашими словами и слюнами по чудному бузибоксу(да и остальным юниховым темам) весь опеннет обмазан. В какую тему не зайдешь там вы, перемежая русские слова с калькой английских слов, свет знаний несёте.
Так что я жду чудных примеров по автоматизации администрирования AD. Дальше посмотрим, может реально всё там проще будет. Ну а пока останусь при своём мнении - вы просто балаболка.
> Давайте мне примеров.Ну я например рекод видео себе сделал: пускаю ffprobe, грепаю теги, если камера воткнула тег orientation - грю ffmpeg'у еще и крутануть при транскодировании, чтобы это при проигрывании проц не жрало.
На самом деле надо было почти одноразово, батчик видиков прожевать. Ну я за несколько минут и накодил, чтобы сотню видео с камеры не колупать как мартышка самому. На поварщели это была бы камасутра которая наверное заняла бы дольше чем транскодинг. Ну вот нафиг мне в этой задаче заниматься хардкорным програмизмом и какими там еще объектами? Если я вот настолько захочу - я тогда ффмпеговские либы из чего-нибудь другого уже более напрямую дерну. Но для мелкой автоматизации на 1 раз, которая за меня поймет надо ли крутануть конкретное видео с вон той камеры это жуткий оверкилл.
> вы, перемежая русские слова с калькой английских слов, свет знаний несёте.
Я ж не 1Сник, так что совсем без английского опачки.
> Так что я жду чудных примеров по автоматизации администрирования AD.Да отстаньте вы от меня с вашим адом, не интересен он мне, поэтому я не буду разбираться как это делать в *никсах. Я даже готов согласиться с вами что поварщель для этого может быть годится. Но перспектива колупать подобный скрипт у меня бы мягко говоря не вызвала бы энтузиахма.
Хм, если есть готовый, то зачем велосипедить свой?
Потомучто для каждой задачи должно быть не менее 14-15 стандартных решений
И 1001 дистрибутив для этих 15-ти стандартных решений.
>парсить текстовый вывод вместо использования объектного.Под линуксом? Ты дергаешь библиотеки?
А что, на линуксе есть откуда взять объекты? Когда взаимодействие со всяким дотнетом, я еще могу понять. А любая никсовая программа выводит строки, один фиг регулярками парсить, что sed, что powershell-овскими регулярками.
> утомляет парсить текстовый вывод вместо использования объектного.С другой стороны, текстовый пайплайн стыкует ВООБЩЕ СОВСЕМ ЛЮБУЮ ФИГНЮ. Позволяя за пару минут сообразить конструкцию делающую системную рутину всего лишь мелкой развлекухой. На этой фигне так не катит, там это боль. А если кто хотел навороченный ЯП со всеми причандалами - они его и так могли взять, однако. Вот и пошел MS делать WSL с позором, а адепты этой поварщели стали в роли мамонтов.
В соседней ветке описана подобная нечитаемая параша apt-get satisfy "foo" "Conflicts: bar" "baz (>> 1.0) | bar (= 2.0), moo" apt list '~i !~M (~slibs|~sperl|~spython)' и прочая чушь.
Нет, я прекрасно понимаю почему ты стоишь горой за подобные решения. Вас маленькая горсточка специалистов что может "за пару минут" заскриптовать нужную административную вещь. Только вот беда. Ваш код только для однократной записи. А никак не для редактирования и понимания другими людьми.
Значимость свою вы так повышаете на рынке труда. Нас мол мало, но мы наскриптуем огого. А после вас эту дрянь надо разбирать.
> !~M (~slibs|~sperl|~spython)' и прочая чушь.С другой стороны, выхлоп этой фигни потом можно отдать ВООБЩЕ СОВСЕМ ЛЮБОЙ ПРОГРАММЕ. И сделать с этим все что угодно. За 2 минуты. Без хардкорного кодинга полдня с объектами и убер-рантаймов, взлетающих на VM дольше, чем я команду буду печатать, бл.
> Нет, я прекрасно понимаю почему ты стоишь горой за подобные решения. Вас
> маленькая горсточка специалистовКакая, к архидьяволу, горсточка? Умение немного скриптить - необходимый минимум для любого *никс админа или любой смежной професии. Иначе тело считается дико неэффективным относительно коллег и вылетает с волчим билетом, затрачивая на те же таски в эн раз больше времени.
> вещь. Только вот беда. Ваш код только для однократной записи.
ИЧСХ большинство задач системного администрирования и автоматизации примерно такие и есть.
> А никак не для редактирования и понимания другими людьми.
Они вообще при нужде напишут себе свое, прям под свою местечковую специфику. За те же 2 минуты.
> Значимость свою вы так повышаете на рынке труда. Нас мол мало,
> но мы наскриптуем огого. А после вас эту дрянь надо разбирать.Для лично меня это всего лишь мелкая aux вспомогаловка, разгоняющая мою эффективность в решении рутинных проблем. Так что я могу заняться хардкорным трахом с интересным проектом а не с неинтересной aux вспомогаловкой...
Твоя фигня нафиг не нужна в ближайшей окрестности от нормальных людей. Потому что не предназначена для изменений.
А способность скриптово решать задачу и лепить йухню, вот как ты, немножко так различаются.
И я так немножко вижу разницу между скриптами одного коллеге по администрированию серверов. И скриптами другого коллеги, вот такого как ты, что небольшую систему мониторинга запилил.
> Твоя фигня нафиг не нужна в ближайшей окрестности от нормальных людей.Нормальные люди - это кто? Нормальные юниксоиды большинство мелкой автоматизации мигом вырисовывают прямо под свои нужды по месту - они, цуко, в 99% гуглить и качать дольше будут чем просто команды в консоль вбить.
> Потому что не предназначена для изменений.
Поварщель вообще не понятно для чего предназначен. Наверное для пары голимых скриптов менеджмента микрософтовского АДа. При том - я даже видел парочку такого креатива. И упаси меня в таком коде копаться!
- Потому что если это мелкая автоматизация, это слишком дофига долботни как-то.
- А если это серьезный проект, яп можно и не настолько долбанутый, чтоли, взять.А это помесь ужа и ежа, в общем километр колючей проволоки какой-то. Ну вот да, тут все козыряют аж одним кейсом - АДом. Экая однозадачная штукенция. Моим задачам АД, по счастью, уже ортогонален - и соответственно я буду считать сабж абсолютно бесполезным для меня артефактом.
> А способность скриптово решать задачу и лепить йухню, вот как ты, немножко так различаются.
Уйхня - это то что я в скриптах менеджмента поварщели видел.
> И я так немножко вижу разницу между скриптами одного коллеге по администрированию
> серверов. И скриптами другого коллеги, вот такого как ты, что небольшую
> систему мониторинга запилил.Не, ну среди башистов и прочих тоже извращенцев хватает. Вон один даже продал скрипт энтерпрайзу, лихо, между прочим, макнув вас на тему того для чего там баш не пригоден. Он на этом клиента для обновления сертов let's encrypt накодил.
подход "всё есть объект" намного круче "всё есть файл".
это мега крутая вещь.
если бы еще эти самые объекты не имитировались бы обычными строками (с соответствующими эффектами) - было бы даже и хорошо.
Кто где имитируется?
В posix, вестимо.
Нет ни стандартного record separator (привет json), ни field separator (привет csv).
Попробуйте в многострочные записи, в group by не по началу строки, в нетекстовые соложносоставные данные в bash
Python Interpretator все решает.
> Python Interpretator все решает.Он так решает что потом еще 10 решал придется нанять для майнтенанса.
В пышпыш имитируется. Попробуйте написать на нём код разборки аст, замены токенов и сборки обратно. Без работы со строками и всякими Start, Length - получится?
лучше пользуйся IPython.
Ага а после такие кк ты плодят стопицот обьектов и методов и каждый васян свой сжеч вас.
> подход "всё есть объект" намного круче "всё есть файл".
> это мега крутая вещь.Параллельные вещи.
Сложное неудобнее простого.Одно др. не мешает и норм. сочетается. Смотря какую часть строить из этого.
> подход "всё есть объект" намного круче "всё есть файл".И правда, при попытке подружить пару сущностей с разными типами - мозг это нечто сношает намного круче. Там где в *никсе тривиальный пайплайн просто отпедалил бы что надо и отвалил в туман, в этой дряни так не катит. Поэтому на решение той же задачи системной автоматизации убивается намного больше времени.
И чем же тебе пайплайн пш хуже пайплайна баша?
> И чем же тебе пайплайн пш хуже пайплайна баша?Тем что может послать в пень с коментами что типы видите ли не те - и простая идея превращается в адовый програмизм на полдня.
Давай примеры. С адом на полдня.
> Давай примеры. С адом на полдня.Ну я вон привел пример: позырил теги видео да скроил разные команды транскодинга на разные оказии, в одном случае крутим видео при транскоде, в другом нет. Ума не приложу как любители поварщели с структурированием что-то такое могут по быстрому обтяпать.
> Вот серьёзно, кто-то пробовал ЭТО не под виндой?а почему нет? было время, админил я 30 linux серваков (сам на linux сидел) и 4 серверных винды (отказаться от них на тот момент было нельзя) и стояла у нас специальная виртуалка, на которую мы по RDP цеплялись и админили виндовые сервисы в т.ч. и через PS. делать тож самое но напрямую в PS было бы проще я думаю.
Теперь с ансибле это проще, и тебе наплевать что там это PS крутит (а не питон).
PS и Ansible, они немного про разное.
Ansible на Windows ипользует Powershell DSC под капотом, вместо этово вашево петона.
Я ему про эту и пишу, можно без проблем рулить сервисами винды с помощью PS вообще не зная что такое PS.
Вы явно не пробовали ansible админить винду.
Оно ее умеет плохо.
PS для винды лучше.
А вот как с этим жить в качестве оболочки не знаю, даже интересно попробовать. Но пока дурью заниматься некогда
Винду вообще хорошо не умеет ничего. Даже сама винда и мсовские тулсы. Их энтерпрайзные поделия непрозрачны и глючны, при том такое комбо приводит к тому что часто глюкает, но понять почему - ад и трэш, а поскольку оно проприетарное то даже если и поймете - то чего? В общем админить винды это занятие для мазохистов. Или эникейных мышевозил, если их устраивает такое убиение времени на вещи которые должны просто работать.
Действительно должны быть вещи которые просто работают. Сколько у вас там надо натрахаться для заведения нормальной лдап авторизации, привязки ссо, средства групповой работы и тому подобного?
> Действительно должны быть вещи которые просто работают. Сколько у вас там надо
> натрахаться для заведения нормальной лдап авторизации, привязки ссо, средства групповой
> работы и тому подобного?А черт знает, мне AD'а как-то и на винде хватило, поэтому как с этим AD'ом еще и в пингвине работать я таки не буду узнавать, сорь. Но могу предположить что обычный способ (=дернуть утилсы какой-нить самбы-румбы) и там катит. Почему нет?
Ну и в винде все эти базворды - круто, конечно. Но я видел как оно работает. И что бывает, если лыжи почему-то встали на асфальт. И именно за это и не люблю MS и их технологии :)
Я. И, внезапно, очень доволен.
>Вот серьёзно, кто-то пробовал ЭТО не под виндой?Можно было бы даже и попробовать, но смущает это: "Начиная с ветки PowerShell 6 проект развивается с использованием платформы .NET Core.". Это получается, что ради PowerShell нужно ещё и Mono в систему тянуть?
Все именно что наоборот.
dotnet core - модульный фреймвок который был переписан с нуля кроссплатформенным, из моно там нет ничего. Главное отличие в его модульности - не нужно ставить никаких моно и прочих бойлерплейтов/фреймворков, все нужные либы модулями подключаются при сборке в приложение и оно само несет в себе нужный ей рантайм и нужные ей модули. Никаких зависимостей.
МС вей - каждая либо должна таскать с собой по собственной копии фреймворка.
Так ведь не по копии, а только зависимости (да и те могут подрезаться). Т.е. это как в Go или как в случае статической сборки для C, C++, Qt (назвать это C++ я не могу и это не есть что-то плохое) и т.д. В общем, не MS это придумал.
Угу, static library это называется и не МСом придумано. Но только МС догадалась впихивать это все в каждый бинарь, вместо того чтобы выносить в динамическую библиотеку.
Мелкомягкие, в отличие от некоторых прочих, умеют учиться хоть изредка. Видимо из DLL Hell выводы были сделаны.
разработчика моно кинули, а так топил за..
> разработчика моно кинули, а так топил за..что значит - кинули? Сделали за него его работу лучше, чем у него получилось? Ну извенииите...
> Это получается, что ради PowerShell нужно ещё и Mono в систему тянуть?MS не придумал ничего умнее как впихать туда дотнет. Очень круто когда на виртуалке терминалка с этим одупляется 30 секунд до того как вы вообще что-то там делать сможете :D
У друга на проекте сменился архитектор, и руководство объявило о смене вектора с Azure на опенсорс, а там два+ года всё автоматизировали на PowerShell. "Ну, там же несложно перейти с Винды на Линух? Нам на вчера надо" )))
Благодаря PowerShell версии под Linux удалось по крайней мере автоматизацию более-менее безболезненно перенести. А так бы пришлось всё выбрасывать и пару месяцев писать код с нуля.
Вот, единственная польза от павершела - как можно менее болезненно слезть с павершела.
Так они с него не слезли, они же не идиоты делать *лишнюю* работу из-за чьих-то там религиозных воззрений, когда там из-за них основной хватает ))
> А так бы пришлось всё выбрасывать и пару месяцев писать код с нуля.То что на паваршелле пару месяцев колхозили, *никсоиды за 2 дня сделают...
есть у кого успехи с vmware powercli уже? Или по прежнему нужны странные телодвижения, а результат глючит и тормозит?
Так ты же само когда-то распиналось, что померщель на вмшмаре ...шь во всю. А теперь об успехах спрашиваешь?
> Так ты же само когда-то распиналось, что померщель на вмшмаре ...шь во
> всю. А теперь об успехах спрашиваешь?так я ж клятый виндузятник, ты что, не слышал?
Под проклятой-то у меня все работает (хотя, вон, у некоторых, говорят, текетъ). Но нужно ж хоть иногда мимикрировать под не-такого-как-все, иначе за что мне зарплату-то платить?
Да и тупит этот ваш rdp, под этим вашим шва6одным...
У меня есть немного. Что именно интересует?
ну хотя бы набор версий, линукса, павершлепа и powercli, с которыми все работает. Или - что не работает, если таки не все.Ну и если образовался какой список граблей при установке - или наоборот, порядок правильных действий - наверное, не только мне интересно бы взглянуть.
OL7 и Fedora 28-31, powershell 6.x, powercli 6.5.Проблемы скорее с запуском в виндовс. 1. При долгой отладке в одной и той же сессии powershell течёт. Потерял несколько дней на этом - не мог понять то ли powershell, то ли powercli, то ли vsphere. Сообщения с ошибкам ещё то удовольствие. Переоткрытие сессии не помогало, решилось перезагрузкой. Встретил, правда, только один раз, возпроизвести не смог ибо к тому времени скрипты уже работали как надо. 2. Скрипты (диски для oracle rac) зависают в произвольном месте. VSphere само себе при этом бодро и правдиво рапортовало об успешной операции. Решалось нажатием anykey в сессии, далее скрипт продолжает работать как ни в чём не бывало.
В линуксе ничего подобного не наблюдал. С другой стороны некоторые вещи в core до сих пор не поддерживаются.
Выяснилось, что если переписать на питоне, то оно тоже работает. По субъективным впечатлениям шустрее. Сейчас особой разницы не видно. В общем, powershell становится лучше.
Руками при инсталяции не водил и в барабан не бил. Распаковал модули куда надо и заработало.
О, годноту подвезли.
Надо попробовать.
s/дн/вн/Не благодарите.
> Note: The snap package is segfault after launching on Ubuntu 16.04. We are investigating with the .NET team. The workaround for not is to use the DEB or tar.gz package.Фирменная изюминка на месте.
Ставить шелл снапом какая-то глупая идея как по мне, всегда ставлю обычным пакетом.
> Ставить шелл снапом какая-то глупая идея как по мне, всегда ставлю обычным
> пакетом.да-да, потом нужно обновить систему, а паверушёл и коркаНЕТ хотят зависимостей и они несовместимы с обновлениями, а их самих обновлять забросили (что не редкость для мсявых)
Из репов поставить религия не позволяет? А твоими ..да-да, потом нужно обновить.. весь сурсфорж завален. И авторы там отнюдь не мсявые.
> Из репов поставить религия не позволяет? А твоими ..да-да, потом нужно обновить..
> весь сурсфорж завален. И авторы там отнюдь не мсявые.смысл мною сказанного - snap для подобных шняжек - самое оно
snap install powershell –classicи, да - в "стандартных" репах его нет https://docs.microsoft.com/ru-ru/powershell/scripting/instal...
Что значит в стандартных? ППА на ланчпаде тоже как бы не совсем стандартные репы. Хошь от МС ставь репу, хошь сам руками с гитхаба собирай, хошь в официальные репы протаскивай. Это же свобода за которую вы все тут топили. А теперь слюни разбрызгиваете.
> Что значит в стандартных? ППА на ланчпаде тоже как бы не совсем
> стандартные репы. Хошь от МС ставь репу, хошь сам руками с
> гитхаба собирай, хошь в официальные репы протаскивай. Это же свобода за
> которую вы все тут топили. А теперь слюни разбрызгиваете.я ничего, в отличии от вас, не разбрызгиваю ;)
вот как хочу - так и делаю
> смысл мною сказанного - snap для подобных шняжек - самое оно
> snap install powershell –classicЧтобы сделать из системы окончательный аналог винды, даже с телеметрией то? Вы на верном пути! :)
>> смысл мною сказанного - snap для подобных шняжек - самое оно
>> snap install powershell –classic
> Чтобы сделать из системы окончательный аналог винды, даже с телеметрией то? Вы
> на верном пути! :)конечно - лучше прям сразу ППА или с сайта вгетом МС пакетики впендюоивать, а потом выковыривать ;)
Посмотреть, что за зверь - самое то snap-ом. Потом чистить меньше.
Повар щель не нужен. Для скриптов слишком сложно. Для ЯП слишком неудобно. Ни там ни тут.
Это на твой дилетантский взгляд. На деле, как только касаешься всяких башей-авкашей поначалу вроде ничё - пару строк написал и задача решена. Затем задачи усложняются или возникают неожиданные запросы и тут либо скриптота сливает, либо придётся изучать баш вдоль и поперёк ради сиюминутной фичи, которая в ЯОН делается на раз.Для полноценной работы в системе нужен полноценный же язык. Чтобы вся мощь языка и библиотек была на кончиках пальцев. В принципе, даже что-то вроде BASIC'а вполне могло бы сгодиться.
Если вам нужно сложное то лучше сразу взять питон или перл или чтото еще, они всяко лучше и перспективнее
Мне кажется, что весь смысл существования этого "шелла" в том, чтобы обмануть начинающих сисадминов: это же шелл, тут не надо изучать программирование, можно и на коленке нашкрябать. Те же кадры и на баше сложную логику пишут (те самые "портянки", которые все ругают), вместо того, чтобы взять нормальный скриптовый язык. При это баш отлично справляется с основной задачей шелла, т.е. запуском и управлением процессами, а в PowerShell даже с этим куча гемора.
Смысл этого в том чтобы на венде тоже чтото типа было.Баш реально не нужен почти никогда и все укладывается в возможности шела, тут пртмерно как с с++ котрый вижалстудия предлагает по дефолту, а начинающие не видят разницы и думают что их код на си
>Баш реально не нужен почти никогда и все укладывается в возможности шелаУ вас тут противоречие какое-то.
bash и sh, я за последнее для скриптов
вы почти раскрыли наш хитрый план:
> чтобы обмануть начинающих сисадминов: это же шелл, тут не надо изучать программирование,
> можно и на коленке нашкрябать- все так и есть. Но выводы сделали неправильные - это только в вашем линyпсе оно так.
Потому что про csh вам не рассказывают, чтоб не сбивать с пути истиного, а между башем и любым скриптовым языком неодолимая пропасть, не говоря уже про компилируемые. Ибо нехрен админчикам отнимать кусочек хлеба у девляпсов, на всех все равно не хватает.А у нас обманутые сисадмины подвоха не замечают, вчера еще шкрябал модули на паверщели, а сегодня опа - и уже программирует на .net, толком и не заметив, когда вляпался.
Мы же - корпорация - зла!
Да тут на пару строчек...Понадобилось скрипт для развёртывания виртуалки написать элементарный (да, да, скажут напиши коробас к vagrant или ещё чего - не хочу обмазываться, когда задача на копейку).
Ну начал на cmd.exe. Вот это попа я скажу. Полез в Powershell... В итоге психанул - переписал на python 😐
А такие затруднения для элементарной задачи...
На bash тоже бы психовал, если бы писал. Потому что он для людей каких-то сделан этих с #FF0000-глазами.
Что с башем не так? Вагон документации и примеров на любой чих. Осилит даже студент.
Так кто тут дилетант?
Perl ?
Не он для того и разрабатывался, да нормально переносим меж системами-платформами (tclоскрипты в плане портабельности получше будут). А надо чего пообъектнее, чтобы заместь одной строки полсотни написать.
Perl поддерживает ООП
> Чтобы вся мощь языка и библиотек была на кончиках пальцев. В принципе, даже что-то
> вроде BASIC'а вполне могло бы сгодиться.И чего в результате получится? И куда это такое? А, получатся сотни гомнокода, пытающегося трепыхаться как нормальная программа, но из-за подходов являющегося не более чем картонным макетом таковой? Ну, круто.
Я нашел удобным написание дот-нетовского гуя в PS.
Аналогично PyQt5.
Во-во. Я помню - я PS для линукса пару лет назад искал, потому что какую-то хню на нем наGUIли, а я хотел портануть. С тех пор забыл уже и что это было. Assistant для MtG Arena, вроде. Как там теперь с кросплатформенностью таких гуёв?
По моему убеждению, MS и кроссплатформенность несовместимы по определению.
Питон и Qt, ну или Java (я её не знаю).
мелкогалкие, просто прикрутите позикс! :)
Прикрутили давно, WSL(2) называется. Есть все, что надо - bash, awk, sed, find, grep. фуфлошел не нужен.
>Автоматический вывод уведомления о появлении новой версии;И, надо понимать, отправка инфы о текущей версии также присутствует? ;)
>И, надо понимать, отправка инфы о текущей версии также присутствуетА какже! "При сборке приложения он подтягивает зависимости" вот кто надо начинает знать, какого рода приложение кто-то написал. И недайбох тебе понадобится набор пакетов, похожий на "программу для террористов"....
Ну кагбе
> By default, PowerShell collects the OS description and the version of PowerShell
Ясно, понятно. Что бы MS не делал, на выходе телеметрия получается.
«Они и тебя посчитали»
Зачем это здесь?
Так забыли дописать реклама ;)
Open Source же.
С модулями которые пишут под виндовый powershell тут как будет работать?
Есть у кого опыт работы из linux с сервисами microsoft(office365) через powershell?
Если я правильно помню они сейчас очень резко пишут Microsoft Graph. Но там всем должно стать проще, а не только пользователям пш.
bash и иже с ним R.I.P.
Ждем новую версию Убунты с повершелл.
:)
> По умолчанию PowerShell передаёт телеметрию с описанием ОС и версией программыСразу досвидания.
вам есть что скрывать ? наряд ЦРУ уже выехал к вам
Поздравляем Линуксоидов опеннета с очередным улучшением в командной оболочке любимых ОС!
echo /бин/пш >> /etc/shells
echo /бин/пш > /etc/shellsИсправил. не благодари :)
самое главное в новости не указано - сколько Гигабайтов занимает на диске этот powershell?
это только для васянов с маленьким...хм...диском самое главное.А остальным как-то пофигу.
vs_Community.exe --layout VSLayout --add Microsoft.VisualStudio.Workload.NativeDesktop --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.VisualStudio.Workload.NetWeb --add Component.GitHub.VisualStudio --add Microsoft.VisualStudio.Component.VC.CoreBuildTools --add Microsoft.VisualStudio.Component.VC.Redist.14.Latest --add Microsoft.VisualStudio.Component.Windows10SDK --add Microsoft.VisualStudio.Component.VC.CMake.Project --add Microsoft.VisualStudio.Workload.VCTools --includeOptional --lang en-US
(манал-я-его-десктоп - это .net как раз, но вообще-то мне надо собрать нечто на с++) нагадил тут на 9гигабайт (это дистрибутив для оффлайновой установки, а не установленная версия) - это вот да, несколько обидно.
С другой стороны, диски нынче - дешооовенькие...
> С другой стороны, диски нынче - дешооовенькие...1Тб около 25тыр. Подешевело на 5тыр за пару лет.
А к шпиндельным большие вопросы к производительности. Всякие там модно-молодёжные наложенные дорожки. Технология стала портиться. А вот цена нужного - сохранилась. Дешевле не стало.
к ним по надежности большие. По производительности в режиме writeonly - вопросов нет (SMR диски пишутся с той же или даже более высокой скоростью (выше плотность), что и pmr - их _перезаписывать_ нельзя - ну так часто ты что-то удаляешь с рабочего диска?)Другое дело что это трэштехнология, дает выигрыш на десяток процентов (как внезапно выяснилось) а вот надежность такой записи - сомнительна, с учетом того что современные диски и так читают чорти что чорти какими способами.
> 1Тб около 25тыр. Подешевело на 5тыр за пару лет.Не забудьте отапдейтить букмарки глядя на цены на нефть. А если какой ларек не снялся с тормоза - чего сидите, хватайте :)
...подорожало на десятку за 1 день?! :)
Пакеты (1) powershell-6.2.4-1Будет установлено: 21,72 MiB
Ей-богу, проще, а главное гораздо полезнее для саморазвития взять тот же Питон для обработки данных.
Очередное "ноу-хао" от корпорации "Здрвствуйте, приготовьте ваши деньги".
«Очередное "хау-ноу" от корпорации» - так правильно
> развивается с использованием платформы .NET Core. По умолчанию PowerShell передаёт телеметрию с описанием ОС и версией программыБочка дегтя в ложке мёда от M$.
Майкрософт в принципе не может приготовить мёд. Так-то!
От Microsoft нам ничего не нужно!
В таком случае не пользуйся прогами, собранными под винду через wine.
А то выходит от microsoft тебе ничего не нужно, а сам втихую гоняешь бинарники на линуксе, собранные под винду.
Ты очередной лицемер с opennet.
~/buildsλ grep -r TELEMETRY_OPTOUT powershell
powershell/src/powershell-native/build.psm1: $command = "`$env:POWERSHELL_TELEMETRY_OPTOUT = 0;"
powershell/src/powershell-native/build.psm1: $originalTelemetry = $env:POWERSHELL_TELEMETRY_OPTOUT
powershell/src/powershell-native/build.psm1: $env:POWERSHELL_TELEMETRY_OPTOUT = 0
powershell/src/powershell-native/build.psm1: $env:POWERSHELL_TELEMETRY_OPTOUT = $originalTelemetry
powershell/src/powershell-native/.vsts-ci/linux.yml: DOTNET_CLI_TELEMETRY_OPTOUT: 0
powershell/src/powershell-native/.vsts-ci/linux.yml: POWERSHELL_TELEMETRY_OPTOUT: 0
powershell/src/powershell-native/.vsts-ci/mac.yml: DOTNET_CLI_TELEMETRY_OPTOUT: 1
powershell/src/powershell-native/.vsts-ci/mac.yml: POWERSHELL_TELEMETRY_OPTOUT: 1
powershell/src/powershell-native/.vsts-ci/windows.yml: DOTNET_CLI_TELEMETRY_OPTOUT: 1
powershell/src/powershell-native/.vsts-ci/windows.yml: POWERSHELL_TELEMETRY_OPTOUT: 1
powershell/src/powershell/tools/releaseBuild/azureDevOps/releaseBuild.yml: DOTNET_CLI_TELEMETRY_OPTOUT: 1
powershell/src/powershell/tools/releaseBuild/azureDevOps/releaseBuild.yml: POWERSHELL_TELEMETRY_OPTOUT: 1
powershell/src/powershell/build.psm1: $command = "`$env:POWERSHELL_TELEMETRY_OPTOUT = 1;"
powershell/src/powershell/build.psm1: $originalTelemetry = $env:POWERSHELL_TELEMETRY_OPTOUT
powershell/src/powershell/build.psm1: $env:POWERSHELL_TELEMETRY_OPTOUT = 1
powershell/src/powershell/build.psm1: $env:POWERSHELL_TELEMETRY_OPTOUT = $originalTelemetry
powershell/src/powershell/.vsts-ci/linux.yml: DOTNET_CLI_TELEMETRY_OPTOUT: 1
powershell/src/powershell/.vsts-ci/linux.yml: POWERSHELL_TELEMETRY_OPTOUT: 1
powershell/src/powershell/.vsts-ci/mac.yml: DOTNET_CLI_TELEMETRY_OPTOUT: 1
powershell/src/powershell/.vsts-ci/mac.yml: POWERSHELL_TELEMETRY_OPTOUT: 1
powershell/src/powershell/.vsts-ci/windows.yml: DOTNET_CLI_TELEMETRY_OPTOUT: 1
powershell/src/powershell/.vsts-ci/windows.yml: POWERSHELL_TELEMETRY_OPTOUT: 1
powershell/src/powershell/.vsts-ci/windows-daily.yml: DOTNET_CLI_TELEMETRY_OPTOUT: 1
powershell/src/powershell/.vsts-ci/windows-daily.yml: POWERSHELL_TELEMETRY_OPTOUT: 1
powershell/src/powershell/.vsts-ci/install-ps.yml: DOTNET_CLI_TELEMETRY_OPTOUT: 1
powershell/src/powershell/.vsts-ci/install-ps.yml: POWERSHELL_TELEMETRY_OPTOUT: 1
powershell/src/powershell/README.md:To opt-out of sending telemetry, create an environment variable called `POWERSHELL_TELEMETRY_OPTOUT` set to a value of `1` before starting PowerShell from the installed location.
powershell/src/powershell/src/Microsoft.PowerShell.ConsoleHost/host/msh/Telemetry.cs: private const string TelemetryOptoutEnvVar = "POWERSHELL_TELEMETRY_OPTOUT";
Зачем это сдесь?
Стандарт де-факто для администрирования в 2020. Годнота.
Бoльные yблюдки. Но как еще можно назвать таких людей?
И тоооолько в 7-й версии добавили &&.Всю дорогу внешняя уродливость мелкомягких решений.
а в нем можно как-то изменить поведение TAB, чтобы не перебор, а листинг, просто дико бесит этот перебор, иногда приходится пользоваться. еще отдельно бесит тупое именование командлетов, вместо сабэлемент-действие действие-сабэлемент, и вообще начинаю вспоминать про этот повершит бесит ска, взяли настроение испортили
> а в нем можно как-то изменить поведение TAB, чтобы не перебор, аSet-PSReadlineKeyHandler -Key Tab -Function Complete
и судя по поведению - это таки именно readline ;-)
И да, другие кнопки переопределять тоже можно.
А кроме телеметрии есть чего полезного.
Умом все тронулись на своей телеметрии! Везде нытьё только об одном!
Паранойя требует того, чтобы телеметрия *включалась*, а не отключалась.
Местная школота просто не знает PS, его возможности и области применения, т.к. это продакшен утилита, а не академическая. Пойдут работать - познакомятся. Пока им остается кукарекать только про что звон слышали.
Вообще-то, как имевший дело с MS и их тулзами, в том числе и этим, имею заметить что лучшее что можно сделать с такой конторой - уволиться из нее к дьяволу. Мерзкие рабочие инструменты - это все же голимо, что бы пиарасты не вякали :)
Твоё мнение истина в последней инстанции?)
> Твоё мнение истина в последней инстанции?)Не обязательно. Но судя по драпу девелоперс, девелоперс, девелоперс и появлению WSL - мне почему-то кажется что я такой ну вот вообще совсем не один.
Кролики думали что они занимаются любовью. А на самом деле их разводили.(с)
Просто мс пытается делать деньги на всём. Если люди хотят всл - они им запилили всл. Если в абажуре люди хотят запускать линух - они им дали эту возможность. Бизнес, ничего личного.
> Кролики думали что они занимаются любовью. А на самом деле их разводили.(с)Именно поэтому я и держусь подальше от MS и их тулсов теперь. Спасибо, насмотрелся на их внутреннюю кухню - и теперь все это "счастье" будет происходить как-нибудь без меня.
> Если в абажуре люди хотят запускать линух - они им дали эту возможность. Бизнес, ничего личного.
Ну, логично. Хотя с дотнетом счастье попытались внедрить добровольно-принудительно. Истошный вой доносился со всех сторон, потому что внедрили, гм, очень по майкрософтовски - спихнув тупо все проблемы на юзерей и кодеров. Да, это - проще и делевле, ничего личного. Но вот хреново при этом оказаться кодером с продуктами которые в это вляпались :)
Сирёзно? Ну ка введи мне быстро и просто список активных за последние 2 месяца менеджеров без телефонных номеров, которые состоят в группе "test" и при этом не меняли пароль больше полугода.
Давай ковбой.
Одна из причин оттуда уволиться - это как раз возможность заняться чем-то поинтереснее чем вот такой унылый трэш, так что сорянчик, мне над таким таском, кхе-кхе, думать впадлу. Потому что для этого надо копаться в самба тулсах, чтоли, а AD я и на винде наелся выше крыши, вместе с тем адилищем которое для него воротят такие мега вело-перы :)
Как и ожидалось.
А как дышал балаболка, как дышал... хехе.
Ну, блин, мне действительн не интересно копаться в этом MSовском крапе. Я даже допускаю что в конкретно вот том случае это может даже работат лучше. Но мне интересны другие случаи - и в них эта голимая ынтырпрайзятина совершенно непотребна.
> Ну, блин, мне действительн не интересно копаться в этом MSовском крапе. Я
> даже допускаю что в конкретно вот том случае это может даже
> работат лучше. Но мне интересны другие случаи - и в них
> эта голимая ынтырпрайзятина совершенно непотребна.Ну как и думалось - обделался. Можешь не продолжать.
Тут анонимы вечно опорфуниваются. Т они всех заруливают в скриптовании, но им это неинтернесно. То про точку расы тут один недавно вещал и как надо температуру регулировать в квартире.Прав был анонимустус, тысячу раз прав. Де..лы вы итшные без знания жизненных реалий и проблем других людей. А гонору то было, гонору.