Първи стъпки с PowerShell в Linux [Ръководство за начинаещи]


След като Microsoft се влюби в Linux (това, което стана популярно известно като „Microsoft обича Linux “), PowerShell, който първоначално беше Windows -единствен компонент, беше с отворен код и направен междуплатформен на 18 август 2016 г., достъпен за Linux и Mac OS.

PowerShell е система за автоматизация на задачи и управление на конфигурацията, разработена от Microsoft. Състои се от интерпретатор на команден език (shell) и скриптов език, изграден върху .NET Framework.

Той предлага пълен достъп до COM (Component Object Model) и WMI (Windows Management Instrumentation), като по този начин позволява на системата администратори за извършване на административни задачи както на локални, така и на отдалечени Windows системи, както и WS-Management и CIM (Общ информационен модел), позволяващи администриране на отдалечени Linux системи плюс мрежови устройства.

Съгласно тази рамка административните задачи основно се изпълняват от определени .NET класове, наречени cmdlets (произнася се command-lets).

Подобно на скриптовете на обвивката в Linux, потребителите могат да създават скриптове или изпълними файлове, като съхраняват групи от кратки команди във файлове, като следват определени правила. Тези скриптове могат да се използват като независими помощни програми или инструменти на командния ред.

Инсталирайте PowerShell в Linux системи

За да инсталираме PowerShell в Linux, ще използваме официалното хранилище на Microsoft, което ще ни позволи да инсталираме чрез най-популярните инструменти за управление на пакети на Linux, като apt-get или apt и yum или dnf.

Инсталирайте PowerShell на Ubuntu

Първо импортирайте ключовете GPG на публичното хранилище, след което регистрирайте хранилището на Microsoft Ubuntu в списъка с източници на пакети APT, за да инсталирате Powershell :

sudo apt-get update
sudo apt-get install -y wget apt-transport-https software-properties-common
wget -q "https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb"
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
sudo apt-get install -y powershell

Инсталирайте PowerShell на Debian 11

PowerShell за изданията за разпространение на Debian се публикуват в хранилища на пакети за лесна инсталация и актуализации.

sudo apt update
sudo apt install -y curl gnupg apt-transport-https
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-debian-bullseye-prod bullseye main" > /etc/apt/sources.list.d/microsoft.list'
sudo apt update
sudo apt install -y powershell

Инсталирайте PowerShell на Debian 10

wget https://packages.microsoft.com/config/debian/10/packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
sudo apt-get install -y powershell

Инсталирайте PowerShell на RHEL системи

PowerShell за базирани на RHEL дистрибуции като CentOS Stream, Rocky и AlmaLinux са публикувани в официални хранилища на Microsoft за лесна инсталация и актуализации.

---------- On RHEL, CentOS, Rocky & AlmaLinux 9 ---------- 
curl https://packages.microsoft.com/config/rhel/9.0/prod.repo | sudo tee /etc/yum.repos.d/microsoft.repo
sudo dnf install --assumeyes powershell

---------- On RHEL, CentOS, Rocky & AlmaLinux 8 ----------
curl https://packages.microsoft.com/config/rhel/8/prod.repo | sudo tee /etc/yum.repos.d/microsoft.repo
sudo dnf install --assumeyes powershell

---------- On RHEL/CentOS 7 ----------
curl https://packages.microsoft.com/config/rhel/7/prod.repo | sudo tee /etc/yum.repos.d/microsoft.repo
sudo dnf install --assumeyes powershell

Как да използвате Powershell в Linux

В този раздел ще имаме кратко въведение към Powershell; където ще видим как да стартираме powershell, да изпълним някои основни команди и да разгледаме как да работим с файлове, директории и процеси. След това по-късно се потопете в това как да изброите всички налични команди и да покажете помощ за команди и псевдоними.

За да стартирате Powershell, въведете:

pwsh

PowerShell 7.3.3
PS /root> 

Можете да проверите версията на Powershell с командата по-долу:

PS /root> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.3.3
PSEdition                      Core
GitCommitId                    7.3.3
OS                             Linux 5.10.0-9-amd64 #1 SMP Debian 5.10.70-1 (2021-09-30)
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

Изпълнение на някои основни команди на Powershell на Linux.

get-date          [# Display current date]
get-uptime        [# Display server uptime]
get-location      [# Display present working directory]

Работа с файлове и директории в Powershell

1. Създайте нов празен файл, като използвате двата метода по-долу:

new-item  tecmint.tex
OR
“”>tecmint.tex

След това добавете съдържание към него и прегледайте съдържанието на файла.

set-content tecmint.tex -value "TecMint Linux How Tos Guides"
get-content tecmint.tex

2. Изтрийте файл в Powershell.

remove-item tecmint.tex
get-content tecmint.tex

3. Създайте нова директория.

mkdir  tecmint-files
cd  tecmint-files
“”>domains.list
ls

4. За извършване на дълъг списък, който показва подробности за файл/директория, включително режим (тип файл) и време на последна модификация.

dir

5. Вижте всички работещи процеси във вашата система:

get-process

6. За да видите подробности за единичен/група работещи процеси с дадено име, предоставете името на процеса като аргумент на предишната команда, както следва:

get-process apache2

Значение на единиците в изхода по-горе:

  • NPM(K) – количеството нестраницирана памет, което процесът използва, в килобайти.
  • PM(K) – количеството памет за страници, което процесът използва, в килобайти.
  • WS(K) – размерът на работния набор на процеса, в килобайти. Работният набор се състои от страниците от паметта, които наскоро са били посочени от процеса.
  • CPU(s) – количеството процесорно време, което процесът е използвал на всички процесори, в секунди.
  • ID – идентификатор на процеса (PID).
  • ProcessName – името на процеса.

7. За да научите повече, вземете списък с всички команди на Powershell за различни задачи:

get-command

8. За да научите как да използвате дадена команда, вижте нейната помощна страница (подобно на страницата с ръководство в Unix/Linux); в този пример можете да получите помощ за командата Describe:

get-help Describe

9. вижте всички налични псевдоними на команди, въведете:

get-alias

10. Не на последно място, покажете хронологията на командите (списък с команди, които сте изпълнявали преди това) по следния начин:

history

Това е всичко! засега в тази статия ви показахме как да инсталирате Powershell на Microsoft в Linux. За мен Powershell все още има да извърви много дълъг път в сравнение с традиционните обвивки на Unix/Linux, които предлагат много по-добри, по-вълнуващи и продуктивни функции за работа с машина от командния ред и, което е важно, за целите на програмиране (скриптове). както добре.

Посетете хранилището на Powershell Github: https://github.com/PowerShell/PowerShell

Въпреки това можете да опитате и да споделите мнението си с нас в коментарите.