Tải bản đầy đủ (.pdf) (5 trang)

Tài liệu Khám phá 10 tính năng của PowerShell ppt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (312.01 KB, 5 trang )

Khám phá 10 tính năng của PowerShell
PowerShell là một công cụ khá mạnh, nó giúp người
dùng dễ dàng thực hiện thay đổi cấu hình. Nhưng lưu ý
sau khi hoàn thành cấu hình bạn nên sử dụng biến số -
confirm để kiểm tra những cài đặt này.
1. Thông báo mọi thiết bị USB được cài đặt

PowerShell là một công cụ điều khiển Windows
Management Instruments
(WMI). Bạn có thể sử dụng
PowerShell để yêu cầu
WMI truy tìm các thiết bị kết nối USB được cài đặt vào một hệ
thống cục bộ hay từ xa, sử dụng lệnh sau:
gwmi Win32_USBControllerDevice -computername SERVER1 |fl
Antecedent,Dependent
Lệnh này sẽ sử dụng một bộ lọc để hiển thị trường Antecedent (thiết bị gốc) và
Dependent (thiết bị phụ thuộc) từ máy tính có tên SERVER1. Nếu muốn kết xuất đầy đủ
thông tin bạn nên bỏ qua mục Filter và Pipe để xuất ra đầy đủ thông tin về thiết bị kết
nối USB vào hệ thống. Nếu có một thiết bị nào đó được cài đặt cùng với giấy phép bạn
nên thông báo lên máy chủ để máy chủ có thể duy trì kết nối với thiết bị này.

2. Thực hiện những tác vụ của CMD

Nhờ có cả giao diện lệnh nên PowerShell có thể giúp bạn thực hiện mọi tác vụ mà trước
đây bạn thường thực hiện trên DOS. Đây là lí do vì sao PowerShell rất dễ sử dụng.

3. Sử dụng PowerShell để tắt tiến trình

Khi một dịch vụ Windows đang vận hành thì câu lệnh stop sẽ không có tác dụng với nó,
và thông thường chúng ta luôn sử dụng Task Manager để tắt dịch vụ. Tuy nhiên bạn
cũng có thể sử dụng PowerShell để tắt một dịch vụ đang chạy. Ví dụ, để tắt


BadThread.exe bạn thực hiện như sau:

Trước tiên nhập lệnh:
get-process BadTh*
Giá trị trả về có dạng:
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName

28 4 -210844 -201128 -163 25.67 2792 BadThread
Khi ID của tiến trình đã được xác định bạn có thể kết thúc tiến trình này bằng lệnh:
stop-process -id 2792
Khi đó, BadThread.exe sẽ bị chặn. Sau đó bạn cũng có thể sử dụng PowerShell để khởi
động lại dịch vụ.


4. Sử dụng lệnh PSDrive để kiểm tra thông tin hệ thống

Lệnh PSDrive cho phép người dùng xem nhiều đối tượng trong môi trường Windows
trên mạng truyền thống, trên hệ thống hay trên ổ đĩa di động. Một lệnh thường được sử
dụng là HKLM PSDrive để xem nhóm Registry cấp cao nhất của
HKEY_LOCAL_MACHINE. Để xem nhóm Registry này sử dụng lệnh sau:
PS C:> cd HKLM:
PS HKLM:/>
Sau đó bạn sẽ được chuyển sang cửa sổ hiển thị Reggistry để xem và thậm chí là xóa
một số mục nếu muốn.

5. Cấp phép cho folder định dạng NTFS

Việc quản lý cấp phép NTFS là một tác vụ hoàn toàn riêng biệt, nhưng với PowerShell
bạn có thể cấp phép phân quyền truy cập hay kiểm tra danh sách kiểm soát truy cập
(ACL) giúp thực hiện cấu hình bảo mật. Đây có thể là một cơ chế giải trình để lên lịch

chạy trong một định dạng lệnh hay bạn có thể chạy nó để kiểm tra sự cố cụ thể nào đó. Ví
dụ khi chạy lệnh:
PS E:>Get-Acl N:Data
Lệnh này sẽ thông báo quyền bảo mật của bạn tới một đường dẫn cụ thể (nó sẽ không
chia sẻ quyền truy cập). Tuy nhiên nó chỉ gửi đến một đường dẫn cụ thể duy nhất nhưng
nếu muốn nhận lại toàn bộ đường dẫn bạn có thể sử dụng một cách khác. Với đường dẫn
trên (N:\Data) bạn hãy dùng lệnh Get-Childterm (cmdlet) trong Powershell kết hợp với
lệnh Get-Acl như ví dụ dưới đây:
PS E:>Get-ChildItem N:Data -recurse | Get-Acl
Lệnh này sẽ bao hàm toàn bộ đường dẫn N:\Data và hiển thị ACL trong nội dung của
đường dẫn. Đó là do lệnh Get-Childterm cung cấp một bảng kê các đối tượng của file hệ
thống, và bảng kê này được chuyển qua cho lệnh Get-Acl, sau đó Get-Acl sẽ bổ sung kết
quả cho từng đối tượng.

Nếu muốn nén những thông tin này thành một tài liệu biến số tách biệt nhau bởi dấu phẩy
(CVS), bạn chỉ cần thêm |export-csv c:\filename.csv vào đoạn cuối của lệnh cmdlet.
Bạn cũng có thể bổ sung >c:\filename.txt vào cuối lệnh trên để xuất ra một file văn bản.
Chú ý, khi sử dụng tùy chọn
–recurse nó chỉ thực hiện lại chính xác những thao tác trên
và sẽ kiểm tra toàn bộ đường dẫn mà bạn đã chỉ định. Vì vậy bạn cần lưu ý khi sử dụng
tùy chọn này với file dung lượng lớn hoặc đường dẫn mạng
.

6. Thao tác với PowerShell 2.0

Powershell 2.0 nằm trong Community Technology Preview (CTP). Nó bao gồm một giao
diện đồ họa có tên Graphical PowerShell. Các tập lệnh trong PowerShell được lưu trữ
dưới những file có định dạng
.ps1 giúp người dùng dễ dàng hiệu chỉnh, nhập và truyền
các tập lệnh này qua nhiều máy khác nhau.

Cấp phép NTFS khi chạy trong chế độ đồ họa.

Chú ý: Khi sử dụng PowerShell 2.0 bạn phải thực hiện cấu hình Execution Plolicies
(chính sách thực thi) trong phiên bản không có giao diện đồ họa của PowerShell trước khi
sử dụng công cụ này. Thực hiện cấu hình một trong những Execution Policies như sau:
PS C:>Set-ExecutionPolicy Restricted (Chỉ kiểm tra)
PS C:>Set-ExecutionPolicy AllSigned (Bảo mật tối ưu)
PS C:>Set-ExecutionPolicy RemoteSigned (Bảo mật trung bình)
PS C:>Set-ExecutionPolicy Unrestricted (Ít bảo mật)
Bạn phải sử dụng phần mềm WS-MAN v1.1 để đánh giá PowerShell 2.0, và chỉ sử dụng
được giao diện đồ họa khi có Microsoft .NET Framework 3.0 hỗ trợ.

7. Một số phím tắt trong giao giao diện đồ họa của PowerShell

Nếu đã từng làm việc trong môi trường Microsoft SQL Analyzer bạn mới hiểu được
tầm quan trọng của phím tắt. Trong giao diện đồ họa của PowerShell, bạn có thể lựa chọn
một dòng duy nhất hay nhiều dòng và nhấn phím
F5 để chạy chúng. Trong khi hiệu chỉnh
tập lệnh bạn có thể nhấn tổ hợp phím
Ctrl+S (lưu), Ctrl+Z (làm lại), Ctrl+C (copy) và
Ctrl+V (dán) để tiết kiệm thời gian chỉnh sửa và kiểm thử.

8 Lên lịch thực hiện tác vụ

Nếu thường xuyên phải sử dụng đến một lệnh cmdlet nào đó bạn có thể sử dụng
PowerShell để đưa nó ra hình nền. Và bạn cũng có thể chạy nhiều lệnh cùng một lúc và
lên lịch hoàn thành cho chúng. Lệnh khởi chạy một tác vụ cơ sở bắt đầu với tham số
start-psjob –command. Bạn có thể sử dụng PowerShell để truy vấn trạng thái của mọi
tác vụ với lệnh sau:
PS C:>get-psjob

Sau đó bạn sẽ thấy một bảng kết quả hiển thị trạng thái hiện thời của những tác vụ cùng
với một bản mô tả cho mỗi tác vụ.



Bạn cũng có thể chạy lệnh sau để gỡ bỏ những tác vụ không thực hiện được:
PS C:>remove-psjob 9
9. Chèn Timestamp vào dữ liệu kết xuất của PowerShell

Với những tác vụ của PowerShell bạn có thể nhập nhiều Timestamp (nhãn thời gian) để
xác định một tác vụ đơn lẻ xảy ra trong bao lâu, hay sử dụng Timestamp này như một
công cụ ghi nhớ cho những tập lệnh. Để chèn Timestamp bạn chỉ cần bổ sung một trong
các lệnh sau vào file .ps1:
Lệnh Định dạng Timestamp
“$(Get-Date -format g) Start
logging”
2/5/2008 9:15 PM
“$(Get-Date -format F) Start
logging”
Tuesday, February 05, 2008
9:15:13 PM
“$(Get-Date -format o) Start
logging”
2008-02-05T21:15:13.0368750-
05:00

Còn nhiều định dạng khác nữa cho lệnh Get-Date, nhưng ba định dạng trên phù hợp nhất
với nhiều ứng dụng.

10. Tạo EasyView


Trong PowerShell, một số lệnh làm cho màn hình di chuyển rất nhanh. Nếu không xuất
kết quả ra một file, có thể bạn sẽ không xem lại được kết quả đó trên màn hình. Khi đó
hãy dùng lại lệnh Get-Childterm trong ví dụ trên. Lệnh này sẽ trả về nhiều kết quả tùy
thuộc vào nội dung đường dẫn. Ngoài ra, bạn cũng có thể tạo một chức năng EasyView
để xem những kết quả trên màn hình bằng cách hiển thị một dòng sau mỗi ½ giây. Chức
năng này được tạo như sau:
function EasyView { process { $_; Start-Sleep -seconds .5}}
Dể chắc chắn một lệnh PowerShell sử dụng được chức năng EasyView, chỉ cần gọi nó
với một đường dẫn cuối dòng lệnh. Nếu lệnh này sử dụng được với EasyView bạn sẽ
thấy hiện ra lệnh có dạng sau:
Get-ChildItem N:Data | EasyView
Chức năng EasyView được cấu hình hiển thị nhiều dòng sau mỗi ½ giây. Bạn cũng có thể
cài đặt giá trị thời gian là ms (mili giây).

×