6 module PowerShell giúp thay đổi cách bạn làm việc

Nếu vẫn đang viết các script PowerShell tùy chỉnh cho những tác vụ truyền file cơ bản và báo cáo Excel, bạn đang làm việc quá sức. Các module PowerShell được thiết kế sẵn xử lý hầu hết những tác vụ phổ biến tốt hơn bất kỳ thứ gì bạn tự viết từ đầu.

6. PSReadLine

PSReadLine được tích hợp sẵn PowerShell theo mặc định, nhưng nhiều người, bao gồm cả những người dùng PowerShell nâng cao, không tận dụng hết lợi ích của nó. Module này bổ sung các tính năng chỉnh sửa dòng lệnh mạnh mẽ như highlight cú pháp, chỉnh sửa nhiều dòng và IntelliSense dự đoán.

Cửa sổ dòng lệnh PowerShell đã cài đặt module PSReadLine
Cửa sổ dòng lệnh PowerShell đã cài đặt module PSReadLine

Trước khi bắt đầu sử dụng, hãy chạy lệnh sau để cài đặt phiên bản PSReadLine mới nhất:

Install-Module -Name PSReadLine -Scope CurrentUser -Force

IntelliSense dự đoán dựa trên lịch sử lệnh để đề xuất hoàn thành khi bạn nhập. Để bật tính năng này, hãy chạy:

Set-PSReadLineOption -PredictionSource History
Set-PSReadLineOption -PredictionViewStyle ListView

Hãy đảm bảo bạn có một vài lệnh trong lịch sử - hãy thử chạy lệnh như ipconfig, Get-Service hoặc các lệnh PowerShell hữu ích khác.

5. ImportExcel

ImportExcel có hơn 14 triệu lượt tải xuống trên PowerShell Gallery, và điều này hoàn toàn có lý do. Nó cho phép bạn tạo bảng tính mà không cần cài đặt Excel, điều này rất quan trọng khi làm việc với máy chủ hoặc các script tự động hóa.

Nhập module Excel trên PowerShell terminal
Nhập module Excel trên PowerShell terminal

Gõ lệnh sau để cài đặt module:

Install-Module -Name ImportExcel -Scope CurrentUser

Module này hỗ trợ mọi thứ, từ các lệnh xuất cơ bản đến những tính năng phức tạp như pivot table, biểu đồ và định dạng có điều kiện.

4. PSWriteHTML

PSWriteHTML chuyển đổi đầu ra PowerShell thành báo cáo HTML với bảng, biểu đồ và bộ lọc. Đây là một cách tuyệt vời để tạo báo cáo và trang HTML từ các script PowerShell mà không cần bất kỳ kiến ​​thức nào về HTML.

Lệnh xuất module PSWriteHTML
Lệnh xuất module PSWriteHTML

Gõ lệnh sau để cài đặt module:

Install-Module -Name PSWriteHTML -Scope CurrentUser

Ví dụ, để tạo báo cáo hệ thống về 10 tiến trình sử dụng CPU nhiều nhất:

Import-Module PSWriteHTML
$procs = Get-Process |
Select-Object Name, CPU, WorkingSet -First 10
New-HTML -TitleText "System Report" -FilePath "Report.html" -ShowHTML {
New-HTMLSection -HeaderText "Process Information" {
New-HTMLTable -DataTable $procs -Filtering -Buttons @('copyHtml5','excelHtml5')
}
}

HTML kết quả bao gồm các nút sắp xếp, lọc và thậm chí cả nút xuất được hỗ trợ bởi JavaScript.

Module PSWriteHTML xuất kết quả
Module PSWriteHTML xuất kết quả

3. PSWindowsUpdate

PSWindowsUpdate là module được tải xuống nhiều nhất trên PowerShell Gallery, với hơn 33 triệu lượt tải xuống. Đúng như tên gọi, module này bao gồm các cmdlet để quản lý Windows Update Client.

Module PowerShell PSWindowsUpdate
Module PowerShell PSWindowsUpdate

Gõ lệnh sau để cài đặt module:

Install-Module -Name PSWindowsUpdate -Scope CurrentUser

Module này bao gồm các cmdlet cho mọi thao tác Windows Update mà bạn có thể cần - hoàn hảo cho quy trình làm việc tự động hóa PowerShell. Trong thời gian bảo trì, bạn có thể kiểm tra các bản cập nhật đang chờ xử lý trên tất cả những máy chủ cùng lúc bằng cách sử dụng:

$Servers = 'SERVER01','SERVER02','SERVER03'
Invoke-Command -ComputerName $Servers -ScriptBlock {
Import-Module PSWindowsUpdate
Get-WindowsUpdate -MicrosoftUpdate |
Select-Object @{n='Computer';e={$env:COMPUTERNAME}}, KB, Title, Size, IsDownloaded, IsInstalled, RebootRequired
} | Sort-Object Computer, KB | Format-Table -AutoSize

2. Terminal-Icons

Terminal-Icons giúp bạn làm cho terminal PowerShell của mình trở nên thú vị hơn bằng cách thêm các biểu tượng loại file vào danh sách thư mục PowerShell. Mỗi loại file có biểu tượng và màu sắc riêng biệt, giúp việc điều hướng thư mục dễ dàng hơn rất nhiều.

Module PowerShell Terminal-Icons 
Module PowerShell Terminal-Icons

Gõ lệnh sau để cài đặt module:

Install-Module -Name Terminal-Icons -Scope CurrentUser

Module này kết nối với định dạng đầu ra Get-ChildItem. Sau khi cài đặt, hãy gõ:

Import-Module Terminal-Icons

Giờ đây, khi bạn sử dụng Get-ChildItem hoặc các alias của nó, mỗi loại file sẽ hiển thị biểu tượng và màu sắc riêng.

1. Transferetto

Transferetto là một module PowerShell giúp việc làm việc với FTP, FTPS và SFTP dễ dàng hơn rất nhiều. Thay vì phải chuyển xuống các lớp .NET hoặc cài đặt thêm những công cụ bên ngoài, bạn sẽ có các cmdlet gọn, nguyên bản của PowerShell.

Module PowerShell Transferetto
Module PowerShell Transferetto

Gõ lệnh sau để cài đặt module:

Install-Module -Name Transferetto -Scope CurrentUser

Quy trình làm việc sẽ quen thuộc nếu bạn đã từng sử dụng các module cơ sở dữ liệu. Bạn kết nối, thực hiện công việc, sau đó ngắt kết nối:

$Client = Connect-FTP -Server "ftp.example.com" -Credential (Get-Credential)
Send-FTPFile -Client $Client -LocalPath "C:\Reports\Report1.xlsx" -RemotePath "/uploads/"
Disconnect-FTP -Client $Client

Ngoài những tính năng cơ bản, Transferetto hỗ trợ các tùy chọn SSL, chế độ mã hóa, switch xác thực chứng chỉ và lệnh Request-FTPConfiguration tiện dụng có thể tự động kiểm tra cài đặt kết nối máy chủ cho bạn.

Thứ Sáu, 29/08/2025 11:00
11 👨 314
Xác thực tài khoản!

Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:

Số điện thoại chưa đúng định dạng!
Số điện thoại này đã được xác thực!
Bạn có thể dùng Sđt này đăng nhập tại đây!
Lỗi gửi SMS, liên hệ Admin
0 Bình luận
Sắp xếp theo