ปัจจุบัน PowerShell เป็นเชลล์ข้ามแพลตฟอร์มแบบเปิดและภาษาสคริปต์ที่สามารถติดตั้งและใช้งานบน Windows, Linux, macOS และแพลตฟอร์มอื่นๆ ในบทความนี้ เราจะแสดงวิธีการติดตั้ง PowerShell Core บน Linux distros ยอดนิยม (CentOS, RHEL, Debian, Kali, Mint, Ubuntu) บทความนี้น่าจะเป็นประโยชน์สำหรับผู้ดูแลระบบ Windows ที่คุ้นเคยกับ PowerShell เพื่อนำประสบการณ์ของตนไปใช้ใน Linux
- รายการแพ็คเกจ PowerShell ที่คอมไพล์แล้วสำหรับแพลตฟอร์มต่างๆ มีอยู่ในที่เก็บอย่างเป็นทางการของ Microsoft:https://github.com/PowerShell/PowerShell/releases
- คุณสามารถค้นหาข้อมูลเพิ่มเติมเกี่ยวกับการรองรับ PowerShell ใน Linux distros และเวอร์ชันต่างๆ ได้ที่นี่:https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell-on-linux?view=powershell -7.2
ปัจจุบัน แพ็คเกจ PowerShell หายไปจากที่เก็บ Linux เริ่มต้นเกือบทั้งหมด ดังนั้น ในการติดตั้ง PowerShell ใน Linux คุณต้องดาวน์โหลดแพ็คเกจพื้นที่เก็บข้อมูลของ Microsoft ก่อน นำเข้าคีย์ และใช้ตัวจัดการแพ็คเกจ Linux เพื่อติดตั้ง PowerShell
โปรดทราบว่าเฉพาะ PowerShell Core (ตาม .NET Core) เท่านั้นที่จะสามารถติดตั้งบน Linux คุณไม่สามารถติดตั้ง Windows PowerShell 5.1 แบบคลาสสิกใน Linux PowerShell Core เวอร์ชันล่าสุดที่มีในขณะที่เขียนบทความนี้คือ PowerShell Core 7.2 LTS
จะติดตั้ง PowerShell Core ใน Ubuntu 20.04 และ Linux Mint 20 ได้อย่างไร
ก่อนติดตั้ง PowerShell ใน Ubuntu หรือ Linux Mint คุณต้องอัปเดตรายการแพ็คเกจ:
sudo apt-get update -y
ดาวน์โหลดคีย์ GPG ของที่เก็บ Microsoft:
wget -q https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
ติดตั้งคีย์ Microsoft GPG:
sudo dpkg -i packages-microsoft-prod.deb
อัปเดตรายการแพ็คเกจด้วยแพ็คเกจจาก packages.microsoft.com:
sudo apt-get update
ติดตั้ง PowerShell:
sudo apt-get install powershell -y
แพ็คเกจ PowerShell จะได้รับการอัพเดตโดยอัตโนมัติโดยตัวจัดการแพ็คเกจ apt:
sudo apt update
คุณยังสามารถดาวน์โหลดและติดตั้งแพ็คเกจ PowerShell DEB ได้ด้วยตนเอง:
wget -q https://github.com/PowerShell/PowerShell/releases/download/v7.2.0/powershell-lts_7.2.0-1.deb_amd64.deb
sudo dpkg -i powershell_7.2.0-1.deb_amd64.deb
แก้ไขการพึ่งพาและทำการติดตั้งให้เสร็จสิ้น:
sudo apt-get install -f
การติดตั้ง PowerShell Core บน Debian 11
ในการติดตั้ง PowerShell Core 7.0+ ใน Debian 11 Bullseye ให้ดาวน์โหลดคีย์ GPG สำหรับที่เก็บ Microsoft ก่อน:
wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb
จากนั้นเพิ่มคีย์ GPG ที่คุณดาวน์โหลด:
sudo dpkg -i packages-microsoft-prod.deb
อัปเดตรายการแอพในตัวจัดการแพ็คเกจ:
sudo apt update
ติดตั้ง PowerShell:
sudo apt install -y powershell
PowerShell จะได้รับการอัปเดตโดยอัตโนมัติเมื่อคุณเรียกใช้การอัปเดตแพ็คเกจโดยใช้คำสั่งด้านล่าง:
sudo apt update
หากคุณต้องการอัปเดตแพ็คเกจ PowerShell เท่านั้น:
sudo apt install powershell
ต้องการติดตั้ง PowerShell บน Red Hat Enterprise Linux (RHEL) และ CentOS หรือไม่
PowerShell ใน Linux CentOS และ Red Hat Enterprise Linux (RHEL) Oracle Linux ได้รับการติดตั้งในลักษณะเดียวกัน:
เพิ่มที่เก็บ Microsoft RedHat ลงใน YUM:
curl https://packages.microsoft.com/config/rhel/8/prod.repo | sudo tee /etc/yum.repos.d/microsoft.repo
ติดตั้ง PowerShell Core เวอร์ชันล่าสุดที่มีโดยใช้ตัวจัดการแพ็คเกจ yum (หรือ dnf):
sudo yum install -y powershell
คุณสามารถอัปเดตแพ็คเกจ PoSh ด้วยคำสั่ง:
sudo yum update powershell
นอกจากนี้ คุณยังสามารถติดตั้ง PowerShell จากไฟล์ RPM:
sudo yum install https://github.com/PowerShell/PowerShell/releases/download/v7.2.0/powershell-lts-7.2.0-1.rh.x86_64.rpm
การติดตั้ง PowerShell Core 7.x ใน Kali Linux
ในการติดตั้ง PowerShell ใน Kali ก็เพียงพอที่จะเรียกใช้คำสั่งด้านล่าง:
apt update && apt -y install powershell
การติดตั้ง PowerShell บน Linux ด้วย Snap
คุณสามารถใช้ สแนป เพื่อติดตั้ง PowerShell ใน Linux distros ต่างๆ แนะนำให้ใช้วิธีการติดตั้งนี้สำหรับลีนุกซ์รุ่นที่ไม่มีการสนับสนุน PoSh อย่างเป็นทางการ
คำสั่งในการติดตั้ง PowerShell โดยใช้ snap คือ:
sudo snap install powershell --classic
ในพริบตา PowerShell จะได้รับการอัปเดตโดยอัตโนมัติ แต่คุณยังดำเนินการด้วยตนเองได้อีกด้วย:
sudo snap refresh powershell
จะลบ PowerShell ใน Linux ได้อย่างไร
มาเรียนรู้คำสั่งเพื่อลบ PowerShell ในลีนุกซ์รุ่นต่างๆกัน:
- ในการลบ PowerShell Core ใน Ubuntu/Linux Mint:
sudo apt remove powershell
- ในการลบ PowerShell ใน Debian:
sudo apt remove powershell
- ในการลบ PowerShell ใน Kali Linux:
sudo apt -y remove powershell
- ในการลบ PowerShell ใน CentOS หรือ RHEL:
sudo yum remove powershell
- ในการลบ PowerShell โดยใช้ Snap:
sudo snap remove powershell
จะเรียกใช้และใช้งาน PowerShell Core บน Linux ได้อย่างไร
ในการรันเชลล์คำสั่ง PowerShell บน Linux ให้รันคำสั่งด้านล่าง:
pwsh
คุณสามารถตรวจสอบเวอร์ชันของ PowerShell ที่ติดตั้งบนโฮสต์ Ubuntu ด้วยคำสั่ง:
$PSVersionTable
ในตัวอย่างของเรา มีการติดตั้ง PowerShell Core 7.2.0:
PSVersion 7.2.0 PSEdition Core OS Linux 5.4.0-81-generic #91-Ubuntu SMP Thu Jul 15 19:09:17 UTC 2021 Platform Unix
คุณสามารถดูคำสั่งที่คำสั่งใน PowerShell shell ใช้เวลานานกว่าใน bash หลายเท่า คุณสามารถเปรียบเทียบเวลาดำเนินการคำสั่งได้:
time pwsh -Command Get-History
time bash -c history
ตามค่าเริ่มต้น โมดูล PowerShell ในตัวบางโมดูลจะพร้อมใช้งานบน Linux:
Get-Module –ListAvailable
- Microsoft.PowerShell.Archive
- Microsoft.PowerShell.Host
- Microsoft.PowerShell.Management
- Microsoft.PowerShell.Security
- Microsoft.PowerShell.Utility
- การจัดการแพ็คเกจ
- PowerShellGet
- PSReadLine
- งานเธรด
คุณติดตั้งโมดูลอื่นๆ ได้ รวมถึง VMWare PowerCLI
วิธีรับวันที่ปัจจุบัน:
Get-date
ตรวจสอบเวลาทำงานของโฮสต์:
get-Uptime
ในการแสดงรายการเนื้อหาของไดเร็กทอรีปัจจุบัน:
Dir
หรือ:
Get-ChildItem
โปรดทราบว่าคำสั่ง PowerShell บน Linux ไม่คำนึงถึงขนาดตัวพิมพ์
วิธีแสดงประวัติคำสั่ง PowerShell:
History
หากต้องการความช่วยเหลือเกี่ยวกับคำสั่ง:
Get-help Get-History
ในการเรียกใช้สคริปต์ PowerShell จาก bash:
pwsh /home/sysops/CheckSpace.ps1