Windows PowerShell là gì? | Học trực tuyến CNTT, học lập trình từ cơ bản đến nâng cao

Windows PowerShell là gì?

Chia sẻ kiến thức 02/05/2022

Windows PowerShell là một công cụ tự động hóa tác vụ do Microsoft phát triển để giúp quản trị viên giảm tải công việc của họ. Trong bài viết dưới đây FUNiX sẽ giải thích PowerShell là gì, cũng như một số điều thú vị mà bạn có thể làm với nó.

Rất nhiều người biết đến và sử dụng Command Prompt, nhưng lại ít người biết về PowerShell. Trong bài viết này, FUNiX sẽ giới thiệu những lợi ích của PowerShell, cũng như một số điều thú vị mà bạn có thể làm với nó.

Windows PowerShell là gì?

Trước khi đi sâu vào PowerShell, trước tiên hãy cùng tìm câu trả lời cho một câu hỏi khác: “Shell là gì?”

Shell là một chương trình máy tính nhận các lệnh thông qua bàn phím, phiên dịch chúng và chuyển chúng vào hệ điều hành để thực thi. Về cơ bản, shell hoạt động như một giao diện giữa bạn và hệ điều hành. Nó có thể dựa trên GUI (giao diện người dùng đồ họa) hoặc được xây dựng trên CLI (giao diện dòng lệnh).

Mặc dù shell đã ra đời kể từ khi hệ điều hành Multics  ra mắt vào năm 1969, Windows đã giới thiệu phiên bản shell của nó, với tên gọi Shell, vào tháng 11 năm 1985. Nó là một shell cơ bản hữu ích để quản lý các file được gọi là MS-DOS Executive. Sau đó shell cơ bản này dần được phát triển hơn.

Trước đây, người dùng Windows sử dụng các công cụ khác nhau để quản trị hệ thống và tự động hóa. Vào năm 2006, một cải tiến lớn của khái niệm Shell đã được giới thiệu như một giải pháp: Windows PowerShell.

Windows PowerShell cho phép bạn thực hiện nhiều thao tác khác nhau, từ tự động hóa các tác vụ lặp đi lặp lại, quản trị mạng, v.v. đến các tác vụ đòi hỏi sự tập trung và sáng tạo (như xuất bản, thiết kế nội dung trang web, v.v.).

Nó không chỉ giúp tiết kiệm thời gian mà còn cho phép bạn kiểm soát tốt hơn hệ điều hành và các quy trình của nó.

Cmdlet PowerShell là gì?

Bây giờ bạn đã làm quen với PowerShell, hãy xem xét một trong những khía cạnh quan trọng nhất của PowerShell: Cmdlet.

Cmdlets là các lệnh Windows PowerShell nhẹ nhưng rất hiệu quả. Chúng tồn tại dưới dạng các block (khối) mà bạn có thể sử dụng để thực thi các hành động cụ thể như sao chép và di chuyển tệp hoặc là một phần của tập lệnh PowerShell lớn hơn, nâng cao hơn.

Ví dụ: Get-Help là cmdlet hữu ích nhất vì nó cho phép bạn xem một cmdlet cụ thể làm gì, xem các tham số của nó và hiển thị các cách khác nhau mà cmdlet này được sử dụng.

Tương tự như Get-HelpGet-Command là một lệnh cmdlet khác mà bạn có thể sử dụng để khắc phục các sự cố của shell. Cụ thể, nó hiển thị tất cả các lệnh được cài đặt trên hệ thống. Các lệnh được hiển thị bao gồm cmdlet, chức năng, alias (bí danh), bộ lọc, tập lệnh và ứng dụng. Khi được sử dụng với các tham số, nó sẽ hiển thị cho bạn tất cả các lệnh cụ thể được liên kết với tham số đó.

Ví dụ: lệnh sau sẽ hiển thị tất cả các loại lệnh có sẵn cho máy tính cục bộ của bạn:

 Get-Command *

Mặt khác, Get-Command với tham số ListImported sẽ chỉ nhận được các lệnh từ các phiên hiện tại.

Get-Command -ListImported

Cách khởi chạy Windows PowerShell

Để khởi động Windows PowerShell, hãy mở thanh tìm kiếm trên menu Bắt đầu (Start menu), nhập windows powershell và chạy, chọn Chạy  với tư cách quản trị viên (Run as administrator). Thao tác này sẽ khởi chạy chương trình PowerShell trên máy tính. 

Ngoài ra, bạn có thể khởi chạy nó thông qua hộp thoại Run. Nhấn phím Windows + R trên bàn phím, nhập powershell và nhấn Enter để khởi chạy PowerShell.

Cách sử dụng Windows PowerShell

Như đã giải thích ở trên, PowerShell là ứng dụng giúp bạn tự động hóa các tác vụ lặp đi lặp lại và quản lý các tác vụ quản trị Windows đơn giản, qua đó giúp bạn tiết kiệm thời gian. Dưới đây, FUNiX sẽ giới thiệu một số cách hữu ích nhất mà bạn có thể sử dụng PowerShell.

1. Tạo tập lệnh bằng Windows PowerShell

Tập lệnh (script) là một tập hợp các hướng dẫn, một chương trình ngắn, mà một chương trình lớn hơn sẽ chạy trong quá trình thực thi của nó.

Với PowerShell, bạn có thể dễ dàng tạo một tập lệnh và sử dụng lại nó trong tương lai nếu cần. Có nhiều cách để tạo tập lệnh, nhưng hiện tại, chúng ta sẽ tập trung vào phương pháp đơn giản nhất: tạo tập lệnh PowerShell bằng Notepad.

Để tạo tập lệnh PowerShell, hãy làm theo các bước sau đây:

  1. Nhập notepad vào thanh tìm kiếm của menu Start và chọn Best Match (kết quả phù hợp nhất).
  2. Trong Notepad, viết hoặc dán tập lệnh bạn muốn sử dụng. Ví dụ:
Write-Host "I make memes; Therefore I am."

Bây giờ, hãy nhấp vào tùy chọn Tệp (File) và chọn Lưu dưới dạng (Save as).Nhập tên có liên quan và nhấp vào Lưu (Save).

Để chạy tập lệnh, hãy chạy PowerShell với tư cách quản trị viên. Sau đó, nhập lệnh từ bên dưới và nhấn Enter.

Set-ExecutionPolicy RemoteSigned

Điều này sẽ thay đổi chính sách thực thi (execution policy) trên máy và cho phép bạn chạy các tập lệnh trên PowerShell. Lưu ý rằng đây là một thay đổi vĩnh viễn và giới hạn chính sách thực thi là một tính năng bảo mật có thể ngăn bạn chạy các tập lệnh độc hại. Nếu bạn đang copy và paste tập lệnh PowerShell từ internet mà không hiểu đầy đủ về chức năng của tập lệnh, thì đây là một tính năng hữu ích.

Cuối cùng, nhập A và nhấn Enter, và nhập lệnh này để chạy tập lệnh, thay mshaa bằng tên người dùng của bạn.

& "C:\Users\mshaa\Desktop
cript.txt"

Nếu bạn đã làm đúng các bước trên, tập lệnh PowerShell của bạn sẽ chạy mà không gặp bất kỳ trục trặc nào.

Hãy nhớ rằng, bạn phải chạy PowerShell với tư cách quản trị viên. Nếu không, bạn sẽ không thể thay đổi chính sách thực thi mặc định để ngăn các tập lệnh ngẫu nhiên chạy trên hệ thống của bạn.

Thay vào đó, một ngoại lệ sẽ được gọi và giống như tất cả các ngoại lệ, nó sẽ dừng giữa chừng việc thực thi chương trình của bạn. Giao diện của bạn sẽ trông giống như sau:

2. Xóa nội dung của một tệp cụ thể

Bạn đã bao giờ rơi vào trường hợp phải xóa tất cả nội dung cũ khỏi một tệp, nhưng bạn muốn giữ nguyên bản thân tệp đó chưa? Nếu vậy, bạn có thể sử dụng lệnh clear-content từ PowerShell để thực hiện.

Clear-Content C:\Temp\TestFile.txt

Thay đổi đường dẫn tệp bằng tệp bạn muốn xóa.

3. Chạy lệnh trong máy tính từ xa

Bạn cũng có thể dùng Windows PowerShell để thực thi lệnh trên một hoặc nhiều máy tính từ xa. Chức năng này của PowerShell được gọi là PowerShell Remoting. Tất cả những gì bạn cần là một máy tính và kết nối internet đáng tin cậy.

Tuy nhiên, trước khi thực hiện lệnh, trước tiên bạn sẽ phải thiết lập kết nối từ xa giữa nhiều máy tính. Bạn có thể sử dụng lệnh PSSession để chạy các lệnh từ xa.

Enter-PSSession -ComputerName RemotePCName -Credential UserID

Sau khi kết nối với máy tính, bạn có thể thực hiện các lệnh PowerShell như thể bạn đang thực hiện trên hệ thống cục bộ.

Nếu bạn muốn thực hiện một lệnh trên nhiều máy tính từ xa, hãy chạy lệnh này:

Invoke-Command -ComputerName Server01, Server02 -FilePath c:\Scripts\DiskCollect.ps1

Đoạn code này sẽ thực thi tập lệnh DiskCollect.ps1 trên 2 máy tính từ xa, Server01 và Server02. 

4. Sử dụng PowerShell để quét phần mềm độc hại

Bạn có thể quét phần mềm độc hại trên hệ thống bằng Windows PowerShell. Để quét nhanh, hãy nhập các lệnh sau vào PowerShell và nhấn Enter:

Start-MpScan -ScanType QuickScan

Nhưng đôi khi, quét nhanh thôi là không đủ. Bạn cũng có thể thực hiện quét toàn bộ từ PowerShell.

Start-MpScan -ScanType FullScan

Lưu ý rằng quá trình quét toàn bộ có thể mất một chút thời gian, vì vậy bạn nên chạy nó ở chế độ nền. Để làm điều đó, hãy sử dụng lệnh sau đây:

Start-MpScan -ScanType FullScan -AsJob

Thao tác này sẽ quét toàn bộ phần mềm độc hại trong nền trong khi bạn xử lý các tác vụ khác. 

5. Nhắn tin với các tệp và thư mục

Bạn có thể quản lý các tệp và thư mục trong hệ thống của mình từ một nơi duy nhất với sự trợ giúp của Windows PowerShell. Có rất nhiều thứ khác nhau mà bạn có thể làm, chẳng hạn như di chuyển, mở, đổi tên, v.v. Cũng như các lệnh trước, hãy thay mshaa bằng tên người dùng của bạn.

Đổi tên tệp và thư mục

Bạn có thể dễ dàng đổi tên các tệp và thư mục của mình bằng cách sử dụng cmdlet Rename-Item trong PowerShell.

Rename-Item c:\Users\mshaa\Desktop\MemesAreLame.xls MemesAreCool.xls

Di chuyển tệp và thư mục

Để di chuyển các tệp và thư mục của máy tính bằng Windows PowerShell.

Move-Item c:\Users\mshaa\Desktop\MemesAreLame.xls c:\Users\mshaa\Documents

Mở tệp 

Sử dụng lệnh sau đây để mở bất kỳ tệp ngẫu nhiên nào trên hệ thống:

Invoke-Item c:\MakeUseOf\HelloWorld.txt

Ngoài ra, bạn có thể mở nhiều file cùng một lúc sau khi điều chỉnh một chút lệnh trên.

Invoke-Item c:\MakeUseOf\*.txt

Thay thế tên của một tệp cụ thể bằng dấu hoa thị (*), sẽ cho phép cmdlet Invoke-Item mở nhiều tệp cùng một lúc.

Kết luận

Hy vọng rằng, hướng dẫn ngắn này sẽ giúp bạn bắt đầu với PowerShell. Là một ứng dụng miễn phí của Microsoft, đây là một công cụ rất hữu ích để giúp hoạt động Windows của bạn tự động và mượt mà hơn.

Vân Nguyễn

Dịch từ: https://www.makeuseof.com/what-is-windows-powershell/

ĐĂNG KÝ TƯ VẤN HỌC LẬP TRÌNH TẠI FUNiX

Bình luận (
0
)

Bài liên quan

  • Tầng 0, tòa nhà FPT, 17 Duy Tân, Q. Cầu Giấy, Hà Nội
  • info@funix.edu.vn
  • 0782313602 (Zalo, Viber)        
Chat Button
Chat với FUNiX GPT ×

yêu cầu gọi lại

error: Content is protected !!