Используй силу, Тукс! Применяем PowerShell в Linux - «Новости» » Самоучитель CSS
Меню
Наши новости
Учебник CSS

Невозможно отучить людей изучать самые ненужные предметы.

Введение в CSS
Преимущества стилей
Добавления стилей
Типы носителей
Базовый синтаксис
Значения стилевых свойств
Селекторы тегов
Классы
CSS3

Надо знать обо всем понемножку, но все о немногом.

Идентификаторы
Контекстные селекторы
Соседние селекторы
Дочерние селекторы
Селекторы атрибутов
Универсальный селектор
Псевдоклассы
Псевдоэлементы

Кто умеет, тот делает. Кто не умеет, тот учит. Кто не умеет учить - становится деканом. (Т. Мартин)

Группирование
Наследование
Каскадирование
Валидация
Идентификаторы и классы
Написание эффективного кода

Самоучитель CSS

Вёрстка
Изображения
Текст
Цвет
Линии и рамки
Углы
Списки
Ссылки
Дизайны сайтов
Формы
Таблицы
CSS3
HTML5

Новости

Блог для вебмастеров
Новости мира Интернет
Сайтостроение
Ремонт и советы
Все новости

Справочник CSS

Справочник от А до Я
HTML, CSS, JavaScript

Афоризмы

Афоризмы о учёбе
Статьи об афоризмах
Все Афоризмы

Видео Уроки


Наш опрос



Наши новости

       
10-06-2022, 00:00
Используй силу, Тукс! Применяем PowerShell в Linux - «Новости»
Рейтинг:
Категория: Новости

ре­пози­торий на GitHub). Обо­лоч­ка, исполь­зующая .NET Core, ста­ла кросс‑плат­формен­ной, с ней мож­но работать в раз­личных дис­три­бути­вах Linux (Debian, Ubuntu, CentOS, Red Hat, openSUSE, Fedora) и в macOS.


Вна­чале кросс‑плат­формен­ная вер­сия обо­лоч­ки называ­лась PowerShell Core 6, что­бы явно ука­зать ее зависи­мость от .NET Core. Начиная с седь­мой вер­сии сло­во Core из наз­вания убра­ли, теперь обо­лоч­ка носит имя прос­то PowerShell. Вер­сия обо­лоч­ки, базиру­ющаяся на пол­ной плат­форме Windows .NET Framework, называ­ется Windows PowerShell.


 

Установка и запуск


Ус­танов­ка PowerShell зависит от типа опе­раци­онной сис­темы и ее вер­сии, соот­ветс­тву­ющие инс­трук­ции име­ются на сай­те Microsoft. Нап­ример, для уста­нов­ки PowerShell в опе­раци­онной сис­теме Linux Ubuntu 20.04 нуж­но выпол­нить сле­дующие коман­ды:


sudo apt-get update
sudo apt-get install -ywget apt-transport-https software-properties-common
wget -qhttps://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb
sudo dpkg -ipackages-microsoft-prod.deb
sudo apt-get update
sudo add-apt-repository universe
sudo apt-get install -ypowershell

Что­бы запус­тить уста­нов­ленную обо­лоч­ку PowerShell, выпол­ним в тер­минале коман­ду pwsh. Пос­ле вывода информа­ции о вер­сии PowerShell мы получим обыч­ное приг­лашение коман­дной стро­ки с путем к текуще­му катало­гу в качес­тве пре­фик­са.


PowerShell в Linux 

PowerShell как командная оболочка


Для эффектив­ной и удоб­ной работы в коман­дной стро­ке важ­ны два момен­та.



  1. Нуж­но знать наз­вания команд и их клю­чей. Запом­нить их будет про­ще, если син­таксис команд инту­итив­но понятен и одно­роден. Если мы не пом­ним клю­чи у коман­ды, то дол­жна быть воз­можность быс­тро най­ти справ­ку по этой коман­де и при­меры ее исполь­зования.

  2. Са­ми коман­ды и их клю­чи дол­жны быть крат­кими и удоб­ными для быс­тро­го набора на кла­виату­ре. Обо­лоч­ка дол­жна под­держи­вать механиз­мы авто­допол­нения, поис­ка и пов­тора выпол­нявших­ся ранее команд.


Ес­ли со вто­рым пун­ктом у стан­дар­тных обо­лочек Linux все хорошо, то пох­валить­ся понят­ностью имен и клю­чей команд они не могут: наз­вания мно­гих ути­лит пред­став­ляют собой аббре­виату­ры, при­думан­ные еще в 1960-е годы, а одни и те же клю­чи в раз­ных коман­дах могут иметь раз­ный смысл. В PowerShell такой проб­лемы нет.


 

Структура команд и псевдонимы


В PowerShell име­на всех внут­ренних команд соот­ветс­тву­ют шаб­лону «дей­ствие‑объ­ект», нап­ример Get-Process (получить информа­цию о про­цес­се), Get-Content (получить содер­жимое фай­ла), Clear-Host (очис­тить экран). Для оди­нако­вых парамет­ров команд исполь­зуют­ся стан­дар­тные име­на, струк­тура парамет­ров во всех коман­дах иден­тична, все коман­ды обра­баты­вают­ся одним син­такси­чес­ким ана­лиза­тором. Это дела­ет семан­тику команд оче­вид­ной и зна­читель­но упро­щает запоми­нание и исполь­зование команд PowerShell.


С дру­гой сто­роны, иног­да PowerShell руга­ют имен­но за этот мно­гос­ловный и необыч­ный для дру­гих обо­лочек син­таксис. Нап­ример, нам нуж­но соз­дать в текущем катало­ге пус­той файл 1.txt. В Bash это дела­ется коман­дой touch из пяти букв:


~ touch 1.txt

При соз­дании фай­ла в PowerShell с помощью коман­ды New-Item с парамет­рами пот­ребу­ется ввес­ти боль­ше двад­цати сим­волов.


Соз­дание фай­ла 1.txt c помощью коман­ды New-Item

Выг­лядит ужас­но, прав­да? Но того же резуль­тата мож­но добить­ся, наб­рав коман­ду ni все­го из двух сим­волов.


Соз­дание фай­ла 2.txt c помощью коман­ды ni

Ко­ман­да ni — это стан­дар­тный псев­доним для New-Item (сок­ращение по пер­вым бук­вам слов коман­ды), зна­чение File для парамет­ра -Type исполь­зует­ся по умол­чанию, имя парамет­ра -Path мож­но опус­тить.


Та­ким обра­зом, стан­дар­тные псев­донимы PowerShell, пол­ный спи­сок которых мож­но получить с помощью коман­ды Get-Alias, помога­ют быс­тро вво­дить коман­ды и соз­давать ком­пак­тные и лаконич­ные кон­вей­еры из нес­коль­ких команд.


По­луче­ние пол­ного спис­ка псев­донимов c помощью коман­ды Get-Alias

От­метим, что в Windows PowerShell за некото­рыми коман­дле­тами зак­репле­ны псев­донимы, соот­ветс­тву­ющие стан­дар­тным коман­дам Unix-подоб­ных сис­тем: ls, rm, cp, mv, cat, ps, man, mount. В PowerShell 6/7 дан­ные псев­донимы не опре­деле­ны, их ввод при­ведет к выпол­нению «род­ных» команд Linux.


 

Доступность команд


В .NET Core/.NET 5 реали­зова­на не вся фун­кци­ональ­ность плат­формы .NET Framework, поэто­му в PowerShell 6/7 по умол­чанию заг­ружа­ется мень­ше модулей и будет дос­тупно мень­ше команд, чем в Windows PowerShell. Нап­ример, под Linux недос­тупны коман­ды *-Service, *-Acl, *-Event, Set-ExecutionPolicy.


Часть из отсутс­тву­ющих модулей нап­рямую свя­заны с осо­бен­ностя­ми опе­раци­онной сис­темы Windows и не могут быть перене­сены на дру­гие плат­формы (так, в PowerShell для Linux отсутс­тву­ют про­вай­деры и вир­туаль­ные дис­ки для сис­темно­го реес­тра и хра­нили­ща сер­тифика­тов), некото­рые модули могут быть добав­лены в сле­дующих вер­сиях PowerShell.


При работе с PowerShell в Linux необ­ходимо учи­тывать осо­бен­ности опе­раци­онной сис­темы.


ре­пози­торий на GitHub). Обо­лоч­ка, исполь­зующая .NET Core, ста­ла кросс‑плат­формен­ной, с ней мож­но работать в раз­личных дис­три­бути­вах Linux (Debian, Ubuntu, CentOS, Red Hat, openSUSE, Fedora) и в macOS. Вна­чале кросс‑плат­формен­ная вер­сия обо­лоч­ки называ­лась PowerShell Core 6, что­бы явно ука­зать ее зависи­мость от .NET Core. Начиная с седь­мой вер­сии сло­во Core из наз­вания убра­ли, теперь обо­лоч­ка носит имя прос­то PowerShell. Вер­сия обо­лоч­ки, базиру­ющаяся на пол­ной плат­форме Windows .NET Framework, называ­ется Windows PowerShell. Установка и запуск Ус­танов­ка PowerShell зависит от типа опе­раци­онной сис­темы и ее вер­сии, соот­ветс­тву­ющие инс­трук­ции име­ются на сай­те Microsoft. Нап­ример, для уста­нов­ки PowerShell в опе­раци­онной сис­теме Linux Ubuntu 20.04 нуж­но выпол­нить сле­дующие коман­ды: sudo apt- get update sudo apt- get install -y wget apt- transport- https software- properties- common wget -q https:/ / packages. microsoft. com/ config/ ubuntu/ 20. 04/ packages- microsoft- prod. deb sudo dpkg -i packages- microsoft- prod. deb sudo apt- get update sudo add- apt- repository universe sudo apt- get install -y powershell Что­бы запус­тить уста­нов­ленную обо­лоч­ку PowerShell, выпол­ним в тер­минале коман­ду pwsh. Пос­ле вывода информа­ции о вер­сии PowerShell мы получим обыч­ное приг­лашение коман­дной стро­ки с путем к текуще­му катало­гу в качес­тве пре­фик­са. PowerShell в Linux PowerShell как командная оболочка Для эффектив­ной и удоб­ной работы в коман­дной стро­ке важ­ны два момен­та. Нуж­но знать наз­вания команд и их клю­чей. Запом­нить их будет про­ще, если син­таксис команд инту­итив­но понятен и одно­роден. Если мы не пом­ним клю­чи у коман­ды, то дол­жна быть воз­можность быс­тро най­ти справ­ку по этой коман­де и при­меры ее исполь­зования. Са­ми коман­ды и их клю­чи дол­жны быть крат­кими и удоб­ными для быс­тро­го набора на кла­виату­ре. Обо­лоч­ка дол­жна под­держи­вать механиз­мы авто­допол­нения, поис­ка и пов­тора выпол­нявших­ся ранее команд. Ес­ли со вто­рым пун­ктом у стан­дар­тных обо­лочек Linux все хорошо, то пох­валить­ся понят­ностью имен и клю­чей команд они не могут: наз­вания мно­гих ути­лит пред­став­ляют собой аббре­виату­ры, при­думан­ные еще в 1960-е годы, а одни и те же клю­чи в раз­ных коман­дах могут иметь раз­ный смысл. В PowerShell такой проб­лемы нет. Структура команд и псевдонимы В PowerShell име­на всех внут­ренних команд соот­ветс­тву­ют шаб­лону «дей­ствие‑объ­ект», нап­ример Get-Process (получить информа­цию о про­цес­се), Get-Content (получить содер­жимое фай­ла), Clear-Host (очис­тить экран). Для оди­нако­вых парамет­ров команд исполь­зуют­ся стан­дар­тные име­на, струк­тура парамет­ров во всех коман­дах иден­тична, все коман­ды обра­баты­вают­ся одним син­такси­чес­ким ана­лиза­тором. Это дела­ет семан­тику команд оче­вид­ной и зна­читель­но упро­щает запоми­нание и исполь­зование команд PowerShell. С дру­гой сто­роны, иног­да PowerShell руга­ют имен­но за этот мно­гос­ловный и необыч­ный для дру­гих обо­лочек син­таксис. Нап­ример, нам нуж­но соз­дать в текущем катало­ге пус­той файл 1.txt. В Bash это дела­ется коман­дой touch из пяти букв: ~ touch 1. txt При соз­дании фай­ла в PowerShell с помощью коман­ды New-Item с парамет­рами пот­ребу­ется ввес­ти боль­ше двад­цати сим­волов. Соз­дание фай­ла 1.txt c помощью коман­ды New-ItemВыг­лядит ужас­но, прав­да? Но того же резуль­тата мож­но добить­ся, наб­рав коман­ду ni все­го из двух сим­волов. Соз­дание фай­ла 2.txt c помощью коман­ды niКо­ман­да ni — это стан­дар­тный псев­доним для New-Item (сок­ращение по пер­вым бук­вам слов коман­ды), зна­чение File для парамет­ра -Type исполь­зует­ся по умол­чанию, имя парамет­ра -Path мож­но опус­тить. Та­ким обра­зом, стан­дар­тные псев­донимы PowerShell, пол­ный спи­сок которых мож­но получить с помощью коман­ды Get-Alias, помога­ют быс­тро вво­дить коман­ды и соз­давать ком­пак­тные и лаконич­ные кон­вей­еры из нес­коль­ких команд. По­луче­ние пол­ного спис­ка псев­донимов c помощью коман­ды Get-AliasОт­метим, что в Windows PowerShell за некото­рыми коман­дле­тами зак­репле­ны псев­донимы, соот­ветс­тву­ющие стан­дар­тным коман­дам Unix-подоб­ных сис­тем: ls, rm, cp, mv, cat, ps, man, mount. В PowerShell 6/7 дан­ные псев­донимы не опре­деле­ны, их ввод при­ведет к выпол­нению «род­ных» команд Linux. Доступность команд В .NET Core/.NET 5 реали­зова­на не вся фун­кци­ональ­ность плат­формы .NET Framework, поэто­му в PowerShell 6/7 по умол­чанию заг­ружа­ется мень­ше модулей и будет дос­тупно мень­ше команд, чем в Windows PowerShell. Нап­ример, под Linux недос­тупны коман­ды *-Service, *-Acl, *-Event, Set-ExecutionPolicy. Часть из отсутс­тву­ющих модулей нап­рямую свя­заны с осо­бен­ностя­ми опе­раци­онной сис­темы Windows и не могут быть перене­сены на дру­гие плат­формы (так, в PowerShell для Linux отсутс­тву­ют про­вай­деры и вир­туаль­ные дис­ки для сис­темно­го реес­тра и хра­нили­ща сер­тифика­тов), некото­рые модули могут быть добав­лены в сле­дующих вер­сиях PowerShell. При работе с PowerShell в Linux необ­ходимо учи­тывать осо­бен­ности опе­раци­онной сис­темы.

Теги: CSS

Просмотров: 506
Комментариев: 0:   10-06-2022, 00:00
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

 
Еще новости по теме:



Другие новости по теме: