PowerShell là công cụ quan trọng để quản lý hệ thống hiệu quả và tự động hóa các tác vụ phức tạp. Hãy cùng ITviec khám phá từ PowerShell là gì, tính năng của Powershell là gì và chi tiết cách cài đặt Powershell,… trong bài viết này để khai thác tối đa tiềm năng của công cụ này.

Đọc bài viết này để hiểu rõ hơn về:

  • Tổng quan PowerShell là gì
  • Hướng dẫn cài đặt PowerShell trên Windows, macOS và Linux
  • Các lệnh PowerShell cơ bản
  • Một số mẹo sử dụng PowerShell nên biết

Tổng quan về PowerShell

PowerShell là gì?

PowerShell là công cụ của Microsoft để thực hiện các tác vụ trên Windows, đồng thời hỗ trợ cả Linux và MacOS nhờ có PowerShell Core. PowerShell cung cấp giao diện dòng lệnh cho phép tự động hóa tác vụ và cấu hình hệ thống bằng mã lệnh. 

Khi hoạt động như một shell, PowerShell gửi lệnh trực tiếp đến hệ điều hành thông qua dòng lệnh, giúp người dùng tự động hóa các quy trình lặp lại và lưu trữ lệnh để sử dụng lại sau này.

Ở vai trò ngôn ngữ kịch bản (scripting language), PowerShell có thể gửi lệnh đến các phần mềm khác, giúp điều chỉnh chức năng phần mềm, tự động hóa quy trình, trích xuất dữ liệu từ tập dữ liệu và tinh chỉnh cấu hình một cách linh hoạt.

Các khái niệm cơ bản về PowerShell

Cmdlet

Khác với CMD chỉ trả về văn bản thô, PowerShell làm việc với đối tượng (Objects) thông qua Cmdlet. Điều này có nghĩa là bạn có thể lấy dữ liệu, xử lý nó, và dùng nó cho lệnh khác mà không cần phân tích cú pháp phức tạp. 

Cách tiếp cận hướng đối tượng này giúp thao tác dữ liệu dễ dàng hơn, hỗ trợ phân tích và quản lý hệ thống hiệu quả. Ví dụ, khi chạy lệnh Get-Process, kết quả nhận được không phải là văn bản mà là các đối tượng tiến trình có đầy đủ thuộc tính và phương thức, giúp trích xuất và xử lý thông tin linh hoạt hơn.

Pipeline (|)

Giúp chuyển trực tiếp đầu ra của một lệnh thành đầu vào của lệnh khác. Điều này cho phép người dùng kết hợp nhiều cmdlet để tạo ra các quy trình tự động hóa mạnh mẽ với lượng mã tối thiểu, đơn giản hóa công việc quản trị hệ thống.

Ưu và nhược điểm của PowerShell là gì?

Tiêu chí Ưu điểm  Nhược điểm 
Tích hợp hệ thống PowerShell tích hợp chặt chẽ với Windows, giúp quản trị và tự động hóa hiệu quả PowerShell ít phổ biến trong môi trường Linux và macOS
Hỗ trợ đối tượng .NET PowerShell làm việc với đối tượng .NET thay vì văn bản, giúp xử lý dữ liệu tốt hơn PowerShell yêu cầu kiến thức về .NET, gây khó khăn cho người mới
Khả năng tự động hóa PowerShell hỗ trợ cmdlets, pipeline và scripting, giúp giảm công sức lập trình PowerShell có cú pháp phức tạp, cần thời gian để làm quen
Mở rộng và tùy chỉnh PowerShell hỗ trợ module và function, giúp mở rộng và tùy chỉnh lệnh dễ dàng PowerShell không phổ biến bằng Bash trong hệ sinh thái mã nguồn mở
Quản lý hệ thống từ xa PowerShell Remoting cho phép chạy lệnh trên nhiều máy từ xa, giúp quản trị tập trung PowerShell cần cấu hình và cấp quyền trước khi sử dụng tính năng này
Đa nền tảng PowerShell Core hỗ trợ Windows, macOS và Linux, mở rộng khả năng sử dụng PowerShell có thể chậm hơn so với các shell truyền thống như Bash

Các tính năng nổi bật của PowerShell là gì?

  • Windows PowerShell Workflow: Được giới thiệu từ phiên bản 3.0, tính năng này hỗ trợ thực thi các tác vụ phức tạp trên nhiều thiết bị và địa điểm khác nhau, giúp tiết kiệm thời gian và công sức.
  • Desired State Configuration (DSC): DSC cung cấp các phần mở rộng ngôn ngữ, tài nguyên và cmdlets để giúp quản trị viên duy trì các bộ cấu hình nhất quán trên các thiết bị và hệ thống sẽ tìm ra cách hoạt động tốt nhất.
  • Background Job: Cho phép chạy các script và cmdlets trong nền một cách bất đồng bộ trên cả máy cục bộ và máy từ xa mà không ảnh hưởng đến giao diện người dùng.
  • Scheduled Job: Tương tự như background job nhưng có thể thiết lập lịch trình tự động thay vì phải kích hoạt thủ công.
  • Xử lý lỗi (Error Handling): Xử lý lỗi bằng các khối Try { }, Catch { }, Finally { }, giúp kiểm soát và khắc phục lỗi trong quá trình thực thi lệnh.
  • PowerShell Remoting: Chạy cmdlets trên hệ thống từ xa, giúp quản trị viên điều khiển nhiều máy tính từ một thiết bị duy nhất.
  • Hỗ trợ tìm lỗi (Script Debugging): Cho phép kiểm tra script, lệnh và biểu thức trong khi PowerShell đang chạy. Trình gỡ lỗi hỗ trợ đặt breakpoint, xem call stack và kiểm tra dữ liệu.
  • Tự động hoàn thành (Tab Expansion): Hỗ trợ hoàn thành cmdlets, thuộc tính và tham số chỉ bằng cách nhấn phím Tab, giúp nhập lệnh nhanh hơn.
  • Steppable Pipeline: Cung cấp khả năng chia nhỏ script thành các phần thực thi theo từng bước, cho phép kiểm soát trình tự chạy thông qua các phương thức begin(), process(), và end().
  • Constrained Runspaces: Cho phép tạo môi trường PowerShell với các giới hạn cụ thể, giúp kiểm soát quyền truy cập vào script, cmdlets và các phần tử ngôn ngữ.
  • Windows PowerShell Web Access: Được giới thiệu trong Windows Server 2012, tính năng này giúp chạy lệnh PowerShell từ trình duyệt web trên cả máy tính, máy tính bảng và thiết bị di động mà không cần cài đặt PowerShell.
  • Truyền tệp qua mạng (Network File Transfer): Hỗ trợ truyền tệp giữa các máy tính một cách ưu tiên và bất đồng bộ thông qua BITS (Background Intelligent Transfer Service).
  • Windows PowerShell ISE: Cung cấp môi trường lập trình đồ họa (GUI) với các tính năng như tự động hoàn thành, chỉnh sửa nhiều dòng, tô màu cú pháp, trợ giúp theo ngữ cảnh và hỗ trợ ngôn ngữ từ phải sang trái.
  • Giao dịch (Transactions): PowerShell cho phép thực hiện các giao dịch bằng cách xác định lệnh nào thuộc giao dịch, sau đó có thể hoàn tác (rollback) hoặc xác nhận (commit) giao dịch.

Các lệnh PowerShell cơ bản

PowerShell sử dụng cấu trúc Động TừDanh Từ cho các câu lệnh cmdlets.

  • Phần Động Từ biểu thị rõ hành động sẽ thực hiện;
  • Danh Từ sẽ chỉ tới đối tượng được nhắm tới.
  • Ví dụ như Get-process, Set-Date, Remove-Item,…

Dưới đây là các lệnh PowerShell để thực hiện các thao tác cơ bản:

Thao tác Lệnh Powershell
Kiểm tra phiên bản PowerShell đang sử dụng trên hệ thống $PSVersionTable.PSVersion
Hiển thị tất cả các cmdlets, functions và alias có thể sử dụng trong PowerShell Get-Command
Hiển thị trợ giúp về một lệnh cụ thể Get-Help <cmdlet_name>

(Ví dụ: Lệnh Get-Help Get-Service cung cấp hướng dẫn chi tiết cách sử dụng Get-Service)

Liệt kê các tiến trình đang chạy Get-Process
Kiểm tra trạng thái dịch vụ Get-Service
Dừng một dịch vụ Stop-Service -Name “wuauserv”
Khởi động một dịch vụ Start-Service -Name “wuauserv”
Hiển thị danh sách tệp và thư mục trong đường dẫn hiện tại Get-ChildItem
Hiển thị nội dung của một tệp văn bản Get-Content C:\path\to\file.txt
Tạo một tệp tin mới trong đường dẫn chỉ định New-Item -Path “C:\path\to\file.txt” -ItemType File
Xóa tệp tin hoặc thư mục khỏi hệ thống Remove-Item -Path “C:\path\to\file.txt”
Xuất dữ liệu ra tệp CSV (lưu danh sách các tiến trình đang chạy vào tệp CSV để phân tích sau) Get-Process | Export-Csv -Path “C:\processes.csv”

Đọc thêm: Top 30+ các lệnh trong Powershell phổ biến nhất

Một số mẹo sử dụng PowerShell nên biết

Báo cáo thiết bị USB bằng PowerShell

PowerShell hỗ trợ truy xuất danh sách thiết bị USB qua WMI. Để kiểm tra các thiết bị USB trên hệ thống cục bộ hoặc từ xa, sử dụng lệnh:

gwmi Win32_USBControllerDevice -computername SERVER1 | fl Antecedent,Dependent 

Lệnh này hiển thị thông tin về các thiết bị USB trên máy chủ SERVER1. Nếu cần danh sách đầy đủ, chỉ cần bỏ bộ lọc | fl Antecedent,Dependent. Đây là cách hữu ích để quản lý các thiết bị USB cấp phép trên máy chủ.

Kiểm tra thiết bị USB bằng PowerShell

PowerShell cho phép lấy danh sách thiết bị USB thông qua WMI. Để kiểm tra các thiết bị USB trên hệ thống cục bộ hoặc máy từ xa, sử dụng lệnh:

gwmi Win32_USBControllerDevice -computername SERVER1 | fl Antecedent,Dependent 

Lệnh này hiển thị thông tin thiết bị USB trên SERVER1. Nếu cần danh sách đầy đủ, chỉ cần bỏ bộ lọc | fl Antecedent,Dependent. Đây là cách hiệu quả để quản lý các thiết bị USB trên hệ thống.

Dừng tiến trình bằng PowerShell

Thay vì dùng Task Manager, bạn có thể dừng tiến trình trong PowerShell bằng lệnh:

get-process <tên quá trình> 

Sau khi xác định Process ID, dừng tiến trình bằng:

stop-process -id <Process-ID> 

Nếu tiến trình không dừng, sử dụng -Force:

stop-process -id 2792 -Force 

Truy cập Registry bằng PSDrive

Lệnh PSDrive cho phép duyệt Registry như ổ đĩa. Để vào HKEY_LOCAL_MACHINE, dùng:

cd HKLM:

Bạn có thể xem, chỉnh sửa hoặc xóa mục trong Registry từ đây.

Xuất quyền thư mục NTFS bằng PowerShell

Kiểm tra quyền truy cập thư mục N:\Data:

Get-Acl N:\Data

Quét toàn bộ thư mục con:

Get-ChildItem N:\Data -Recurse | Get-Acl

Xuất kết quả ra CSV:

Get-ChildItem N:\Data -Recurse | Get-Acl | Export-Csv C:\permissions.csv

Xuất ra TXT:

Get-ChildItem N:\Data -Recurse | Get-Acl > C:\permissions.txt

Chạy tác vụ nền trong PowerShell

Chạy lệnh trong nền:

Start-Job -ScriptBlock { <lệnh của bạn> }

Kiểm tra trạng thái:

Get-Job

Xóa công việc thất bại:

Remove-Job -Id 9

Thêm dấu thời gian vào PowerShell

Bạn có thể chèn dấu thời gian vào PowerShell để theo dõi thời gian thực thi hoặc ghi log. Dưới đây là một số cách lấy dấu thời gian trong .ps1:

Định dạng Lệnh Ví dụ đầu ra
Ngắn gọn (g) $(Get-Date -format g) Start logging 12/12/2024 9:15 PM
Đầy đủ (F) $(Get-Date -format F) Start logging Thursday, December 12, 2024 9:15:13 PM
ISO (o) $(Get-Date -format o) Start logging 2024-12-12T21:15:13.0368750-05:00

Kiểm tra kết nối mạng bằng PowerShell

Ping máy chủ từ xa:

Test-Connection techrepublic.com

Kiểm tra cổng mạng:

Test-NetConnection techrepublic.com -Port 80

Nếu thành công, TcpTestSucceeded sẽ hiển thị True. Bạn cũng có thể dùng ping để kiểm tra kết nối.

Kiểm tra mã băm tệp bằng PowerShell

Để xác minh tính toàn vẹn của tệp, bạn có thể sử dụng PowerShell để lấy mã băm:

Get-FileHash -Path “N:\Data\Report.txt” -Algorithm SHA1

Nếu không chỉ định thuật toán, PowerShell sẽ mặc định sử dụng SHA256.

Làm chậm đầu ra trong PowerShell để dễ quan sát

Một số lệnh trong PowerShell hiển thị kết quả quá nhanh, khó theo dõi. Bạn có thể tạo một hàm để hiển thị từng dòng với độ trễ:

function EasyView { process { $_; Start-Sleep -seconds 0.5 } }

Sau đó, sử dụng như sau:

Get-ChildItem N:Data | EasyView

Hàm này sẽ hiển thị từng dòng với độ trễ 0.5 giây, giúp bạn quan sát dễ dàng hơn.

Hướng dẫn cài đặt PowerShell trên Windows

Từ Windows 10, PowerShell đã được cài đặt tự động theo Windows. Tuy nhiên tùy theo nhu cầu sử dụng mà ta có thể cài đặt các phiên bản phù hợp.

Dùng WinGet

WinGet (hay còn gọi là Windows Package Manager) là công cụ dòng lệnh giúp tìm kiếm, cài đặt, nâng cấp và gỡ bỏ ứng dụng trên Windows. Nó được tích hợp sẵn trong Windows 11 và các phiên bản Windows 10 mới. Cài đặt PowerShell bằng WinGet:

Tìm phiên bản mới nhất:

winget search Microsoft.PowerShell

Cài đặt PowerShell:

winget install --id Microsoft.PowerShell --source winget

Cài đặt PowerShell Preview:

winget install --id Microsoft.PowerShell.Preview --source winget

Dùng gói MSI

Đây là lựa chọn lý tưởng cho Windows Server và môi trường doanh nghiệp cần triển khai hàng loạt. Để cài đặt PowerShell trên Windows bằng gói MSI, hãy tải gói cài đặt từ GitHub theo phiên bản phù hợp:

  • PowerShell-7.5.0-win-x64.msi (64-bit)
  • PowerShell-7.5.0-win-x86.msi (32-bit)
  • PowerShell-7.5.0-win-arm64.msi (ARM64)

Sau khi tải xuống, chạy tệp cài đặt và làm theo hướng dẫn

  • Lối tắt PowerShell sẽ được thêm vào Start Menu.
  • Mặc định, PowerShell được cài tại: $env:ProgramFiles\PowerShell\<version>
  • Để mở PowerShell, bạn có thể tìm trong Start Menu hoặc chạy lệnh sau: $env:ProgramFiles\PowerShell\<version>\pwsh.exe

Dùng Gói ZIP

Đây là cách đơn giản nhất để cài đặt thủ công hoặc chạy nhiều phiên bản (phù hợp cho Windows Nano Server, Windows IoT và các thiết bị sử dụng kiến trúc Arm).

PowerShell cung cấp tệp ZIP để hỗ trợ các phương thức triển khai nâng cao. Bạn có thể tải xuống từ trang phát hành hiện tại với các tùy chọn sau:

  • PowerShell-7.5.0-win-x64.zip (64-bit)
  • PowerShell-7.5.0-win-x86.zip (32-bit)
  • PowerShell-7.5.0-win-arm64.zip (ARM64)

Sau khi tải về, nếu tệp bị chặn, hãy sử dụng lệnh sau để bỏ chặn: Unblock-File -Path <đường_dẫn_tệp> Giải nén tệp ZIP vào vị trí mong muốn và chạy pwsh.exe từ đó.

Lưu ý: Cách cài đặt này không kiểm tra các yêu cầu hệ thống. Nếu cần WSMan Remoting, hãy đảm bảo hệ thống đã đáp ứng đầy đủ điều kiện. Đối với thiết bị ARM như Microsoft Surface Pro X, nên cài đặt vào thư mục: $env:ProgramFiles\PowerShell\7

Dùng .NET Global Tool 

Đây là cách phù hợp với các nhà phát triển .NET cần cài đặt và sử dụng các công cụ toàn cầu khác.

  • Nếu đã cài đặt .NET Core SDK, bạn có thể cài đặt PowerShell dưới dạng .NET Global Tool bằng lệnh: dotnet tool install –global PowerShell
  • Sau khi cài đặt, đường dẫn $HOME\.dotnet\tools sẽ được thêm vào $env:PATH, nhưng shell hiện tại chưa cập nhật. Để chạy PowerShell, hãy mở một cửa sổ shell mới và nhập: pwsh

Dùng gói Microsoft Store

Đây là cách đơn giản để cài đặt cho người dùng phổ thông, nhưng có một số hạn chế. Bạn có thể cài đặt PowerShell từ Microsoft Store thông qua trang web hoặc ứng dụng Store trên Windows.

Ưu điểm khi cài đặt từ Microsoft Store:

  • Cập nhật tự động mà không cần thao tác thủ công.
  • Tích hợp với các công cụ quản lý phần mềm như Intune và Configuration Manager.
  • Có thể cài đặt trên hệ thống Windows sử dụng bộ xử lý x86, x64 hoặc Arm64.

Hướng dẫn cài đặt PowerShell trên macOS

Lưu ý: PowerShell 7 hoặc cao hơn yêu cầu tối thiểu macOS 11. Nên kiểm tra các phiên bản có hỗ trợ hệ điều hành hiện tại trước khi cài đặt.

Dưới đây là một số cách để cài đặt PowerShell trên macOS:

Sử dụng Homebrew (khuyến nghị)

Nếu lệnh brew chưa có sẵn, hãy cài đặt Homebrew bằng lệnh sau:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Sau khi cài đặt Homebrew, cài đặt PowerShell bằng:

brew install PowerShell/tap/PowerShell

Để kiểm tra PowerShell đã được cài đặt, chạy:

pwsh

Khi có phiên bản mới, cập nhật và nâng cấp PowerShell với:

brew update && brew upgrade PowerShell

Sau khi cài đặt Homebrew, bạn có thể cài đặt PowerShell Preview bằng lệnh:

brew install PowerShell/tap/PowerShell-preview

Để mở PowerShell Preview, chạy:

pwsh-preview

Để cập nhật phiên bản mới nhất, sử dụng:

brew update && brew upgrade PowerShell-preview

Tải xuống và cài đặt trực tiếp từ trang chính thức

Từ phiên bản 7.2, PowerShell hỗ trợ vi xử lý Apple M-series Arm. Bạn có thể tải xuống gói cài đặt từ trang phát hành:

  • PowerShell 7.4
    • x64: PowerShell-7.4.7-osx-x64.pkg
    • Arm64: PowerShell-7.4.7-osx-arm64.pkg
  • PowerShell 7.5
    • x64: PowerShell-7.5.0-osx-x64.pkg
    • Arm64: PowerShell-7.5.0-arm64.pkg

Cài đặt PowerShell bằng một trong hai cách:

  • Nhấp đúp vào tệp .pkg và làm theo hướng dẫn.
  • Dùng Terminal: sudo installer -pkg ./Downloads/PowerShell-7.5.0-osx-x64.pkg -target /

Lưu ý cách khắc phục lỗi trên macOS Big Sur 11.5+:

Nếu sử dụng phiên bản macOS Big Sur 11.5 hoặc cao hơn, việc cài đặt có thể gặp lỗi sau: “PowerShell-7.5.0-osx-x64.pkg” cannot be opened because Apple cannot check it for malicious software.” Bạn có thể xử lý bằng cách:

  • Dùng Finder: Tìm tệp .pkg, Control + Click và chọn Open.
  • Dùng Terminal: sudo xattr -rd com.apple.quarantine ./Downloads/PowerShell-7.5.0-osx-x64.pkg

Sau đó, tiến hành cài đặt như bình thường.

Cài đặt từ tệp nén (binary archive) để tùy chỉnh linh hoạt hơn:

PowerShell cung cấp tệp tar.gz cho macOS để hỗ trợ cài đặt linh hoạt. Khi sử dụng phương pháp này, bạn cần tự cài đặt các phần phụ thuộc.

  • Tải tệp cài đặt: Bạn có thể tải xuống tệp từ trang phát hành chính thức:
  • PowerShell 7.4 (LTS)
    • x64: PowerShell-7.4.7-osx-x64.tar.gz
    • Arm64: PowerShell-7.4.7-osx-arm64.tar.gz
  • PowerShell 7.5-preview
    • x64: PowerShell-7.5.0-osx-x64.tar.gz
    • Arm64: PowerShell-7.5.0-osx-arm64.tar.gz
  • Cài đặt từ tệp tar.gz: Chạy các lệnh sau trong Terminal, thay đổi đường dẫn phù hợp với phiên bản bạn muốn cài đặt:

# Tải về tệp PowerShell

curl -L -o /tmp/PowerShell.tar.gz https://github.com/PowerShell/PowerShell/releases/download/v7.5.0/PowerShell-7.5.0-osx-x64.tar.gz

#Tạo thư mục cài đặt PowerShell

sudo mkdir -p /usr/local/microsoft/PowerShell/7

#Giải nén tệp vào thư mục đã tạo

sudo tar -xzf /tmp/PowerShell.tar.gz -C /usr/local/microsoft/PowerShell/

#Cấp quyền thực thi cho PowerShell

sudo chmod +x /usr/local/microsoft/PowerShell/7/pwsh

#Tạo liên kết để có thể chạy PowerShell từ bất kỳ đâu

sudo ln -s /usr/local/microsoft/PowerShell/7/pwsh /usr/local/bin/pwsh
  • Sau khi cài đặt, bạn có thể mở PowerShell bằng lệnh: pwsh

Hướng dẫn cài đặt PowerShell trên Linux

PowerShell có thể được cài đặt trên nhiều bản phân phối Linux thông qua trình quản lý gói. Ngoài các bản phân phối được Microsoft hỗ trợ, một số nền tảng khác vẫn có thể sử dụng PowerShell với sự hỗ trợ từ cộng đồng.

  • Alpine: Microsoft hỗ trợ PowerShell cho đến khi PowerShell hoặc phiên bản Alpine hết hạn hỗ trợ. Các Docker image chứa PowerShell 7.4 và 7.5-preview cho x64 có sẵn trên Microsoft Artifact Registry cho Alpine 3.20 (hỗ trợ đến 01/04/2026), nhưng không có cho Alpine 3.21.
  • Debian: Debian sử dụng APT làm trình quản lý gói. Microsoft hỗ trợ PowerShell cho đến khi PowerShell hoặc Debian hết hạn hỗ trợ. Các tệp cài đặt (.deb) có tại [packages.microsoft.com](https://packages.microsoft.com/), và Docker image PowerShell 7.4, 7.5-preview cho x64 có sẵn trên Microsoft Artifact Registry cho Debian 12 (hỗ trợ đến 10/06/2026).
  • Red Hat Enterprise Linux (RHEL): RHEL 7 dùng yum, RHEL 8 dùng dnf để quản lý gói. Microsoft hỗ trợ PowerShell đến khi PowerShell hoặc RHEL hết hạn. Các tệp cài đặt (.rpm) có tại [packages.microsoft.com](https://packages.microsoft.com/), và Docker image PowerShell 7.4, 7.5-preview cho x64 có trên Microsoft Artifact Registry, hỗ trợ RHEL 9 đến 31/05/2032, RHEL 8 đến 31/05/2029.
  • Ubuntu: Ubuntu sử dụng APT làm trình quản lý gói. Microsoft hỗ trợ PowerShell cho đến khi phiên bản Ubuntu hết hạn. Người dùng có thể tải tệp cài đặt từ [packages.microsoft.com](https://packages.microsoft.com/) hoặc dùng Docker image trên Microsoft Artifact Registry. Hiện PowerShell hỗ trợ Ubuntu 24.04 đến 2029, Ubuntu 22.04 đến 2027 và Ubuntu 20.04 đến 2025.
  • Các bản phân phối do cộng đồng hỗ trợ: Đối với các phiên bản Linux không đc Microsoft hỗ trợ, bạn vẫn có thể cài đặt PowerShell thông qua các cộng đồng hỗ trợ. Các phiên bản này phải có bản phân phối tương thích với .Net Core,…. nhóm PowerShell kiểm tra. Để được Microsoft hỗ trợ, bản phân phối phải tương thích với .NET Core, có vòng đời hỗ trợ ít nhất một năm, không phải bản phát hành tạm thời và đã được nhóm PowerShell kiểm tra.

Các câu hỏi thường gặp về PowerShell là gì

Ai nên dùng PowerShell?

PowerShell là công cụ mạnh mẽ dành cho nhiều đối tượng người dùng khác nhau. Các vị trí IT nên hiểu rõ về PowerShell bao gồm:

  • System Admin: Hỗ trợ tự động hóa quản lý hệ thống, triển khai phần mềm, cấu hình máy chủ và quản lý Active Directory hiệu quả.
  • Chuyên gia bảo mật: Phân tích nhật ký, giám sát hệ thống và thực thi chính sách bảo mật nâng cao.
  • DevOps Engineer: Quản lý pipeline CI/CD, triển khai ứng dụng lên cloud và tối ưu hóa quy trình phát triển.

Ngoài ra, một số vị trí IT có thể tìm hiểu cách sử dụng PowerShell cơ bản như:

  • Lập trình viên: Dùng để viết script kiểm thử, triển khai ứng dụng và tích hợp DevOps nhanh chóng.
  • IT Support/Helpdesk: Xử lý sự cố người dùng, kiểm tra cấu hình máy trạm và tự động hóa hỗ trợ.

Làm thế nào để kiểm tra phiên bản PowerShell đang sử dụng? 

Bạn có thể kiểm tra phiên bản PowerShell bằng lệnh:

$PSVersionTable.PSVersion

Lệnh này hiển thị thông tin về phiên bản PowerShell hiện tại, bao gồm Major, Minor, Build, và Revision. Nếu PowerShell không nhận diện lệnh này, có thể bạn đang sử dụng phiên bản cũ hơn 1.0.

Execution Policy trong PowerShell là gì và cách thay đổi nó? 

Execution Policy trong PowerShell là cơ chế bảo mật kiểm soát cách script được thực thi trên hệ thống. Bạn có thể kiểm tra chính sách hiện tại bằng lệnh:

Get-ExecutionPolicy 

Để thay đổi chính sách, sử dụng lệnh sau với quyền Administrator (ví dụ: cho phép chạy mọi script):

Set-ExecutionPolicy Unrestricted

Cách sửa lỗi “Access Denied” khi chạy lệnh PowerShell là gì? 

Lỗi “Access Denied” khi chạy lệnh PowerShell thường do thiếu quyền Administrator hoặc bị hạn chế bởi Execution Policy. 

Bạn có thể khắc phục bằng cách chạy PowerShell với quyền Administrator (nhấp chuột phải > Run as Administrator). Nếu vẫn gặp lỗi, thử thay đổi Execution Policy bằng lệnh:

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Tổng kết Powershell là gì

Vừa rồi, chúng ta đã cùng nhau tìm hiểu chi tiết về PowerShell là gì, từ các lệnh cơ bản đến những mẹo hữu ích giúp bạn làm việc hiệu quả hơn. Hy vọng những thông tin ITviec mang lại sẽ giúp ích cho bạn trong quá trình tìm hiểu chuyên sâu hơn về công cụ này!