5 lệnh nhỏ để giúp bạn bắt đầu với PowerShell
PowerShell đang nhanh chóng trở thành ngôn ngữ kịch bản ưa thích và CLI của Người dùng quyền lực cũng như Ưu điểm CNTT. Thật đáng để học một vài lệnh để bạn bắt đầu, vì vậy chúng tôi đã có 5 lệnh ghép ngắn hữu ích để bạn học ngày hôm nay.
Nhận lệnh
Lệnh Get-Command là một trong những lệnh ghép ngắn hữu ích nhất trong toàn bộ PowerShell, vì nó sẽ giúp bạn nắm bắt được PowerShell bằng cách cho phép bạn tìm kiếm một số lệnh ghép ngắn nhất định. Việc tự mình sử dụng Get-Command được thừa nhận là không hữu ích lắm vì nó sẽ nhổ ra mọi lệnh mà PowerShell có.
Nhưng từ điều này, chúng ta có thể thấy rằng các đối tượng mà PowerShell xuất ra có cả thuộc tính Tên và Mô-đun. Sử dụng thông tin này, chúng tôi có thể tinh chỉnh tìm kiếm của chúng tôi, bằng cách tìm kiếm các lệnh ghép ngắn có chứa các thuật ngữ nhất định. Ví dụ: nếu tôi muốn tìm tất cả các lệnh ghép ngắn có chứa từ IP IP, tôi có thể làm điều này:
Nhận lệnh-Tên * IP *
Như bạn có thể thấy chúng tôi vẫn nhận được khá nhiều kết quả, tùy chọn tiếp theo của chúng tôi là tìm kiếm trong một mô-đun cụ thể. Trong trường hợp của chúng tôi, tôi sẽ chọn mô-đun NetTCPIP.
Nhận lệnh -Module NetTCPIP -Name * IP *
Được giúp đỡ
Khi bạn đã tìm thấy lệnh ghép ngắn mà bạn đang tìm kiếm bằng cách sử dụng Get-Command, bạn sẽ muốn biết cú pháp và cách bạn có thể sử dụng lệnh ghép cụ thể đó. Đây là nơi Get-Help xuất hiện, nếu bạn đã từng sử dụng dòng lệnh trong Windows, có lẽ bạn đã làm một cái gì đó như thế này:
ipconfig /?
Chà, nó không hoạt động trong PowerShell, điều này là do trong PowerShell, một khoảng trắng được sử dụng để tách một lệnh khỏi các tham số của nó. Vì vậy, thay vào đó, chúng tôi sử dụng Get-Help và chuyển tên cmdlets cho Get-Help làm tham số.
Nhận trợ giúp
Nhận thành viên
Get-Member cho phép chúng tôi lấy thông tin về các đối tượng mà lệnh ghép ngắn trả về. Điều hấp dẫn với thành viên get, là nó dựa vào tính năng đường ống của PowerShell, để chứng minh điều này, chúng ta sẽ có thể sử dụng lệnh ghép ngắn Get-Process.
Như bạn có thể thấy đầu ra của PowerShell cho chúng ta thấy một số thuộc tính mà bạn có thể thấy ở đầu mỗi cột. Vấn đề đầu tiên là, trong khi đó là những tài sản mà bạn có thể đang tìm kiếm hầu hết thời gian, vẫn còn nhiều trong số chúng. Vấn đề thứ hai là nó không hiển thị bất kỳ phương thức nào mà chúng ta có thể gọi trên đối tượng. Để xem các phương thức và thuộc tính, chúng ta có thể chuyển đầu ra của mình thành Thành viên, như vậy:
Nhận-Quá trình | Nhận thành viên
Mặc dù nó có thể không có ý nghĩa gì với bạn ngay bây giờ, nhưng sớm muộn bạn cũng cần sử dụng Thành viên, và bạn càng sớm học cách sử dụng nó thì càng tốt. Ví dụ, sử dụng thông tin từ đầu ra, chúng ta có thể làm một cái gì đó như:
Bắt đầu xử lý notepad.exe
$ NotepadProc = Get-Process -Name notepad
$ NotepadProc.WaitForExit ()
Quá trình bắt đầu calc.exe
Tập lệnh đó sẽ khởi chạy notepad, sau đó nó gán đầu ra của Get Get-Process -Name notepad, biến cho biến $ NotepadProc, sau đó chúng tôi gọi phương thức WaitForExit trên $ NotepadProc, khiến tập lệnh tạm dừng cho đến khi bạn đóng notepad, khi bạn đã đóng notepad sau đó máy tính sẽ khởi chạy.
$ _ (Đối tượng đường ống hiện tại)
Mặc dù không chính xác là một lệnh ghép ngắn, nó là một trong những biến đặc biệt được sử dụng nhiều nhất trong PowerShell. Tên chính thức của $ _ là tên đối tượng đường ống hiện tại. Nó được sử dụng trong các khối script, bộ lọc, mệnh đề quy trình của các hàm, where-object, foreach-object và switch. Tuy nhiên, dễ giải thích hơn với một ví dụ, đưa chúng ta đến lệnh ghép tiếp theo và cuối cùng, Where-Object.
Đối tượng ở đâu
Where-Object thực hiện chính xác những gì nó nghe, nó chọn một đối tượng dựa trên việc nó có đáp ứng một tiêu chí nhất định hay không. Điều này sẽ kết hợp $ _ và các thuộc tính chúng ta có thể thấy bằng cách sử dụng Get-Member. Để chứng minh điều này, chúng tôi sẽ chuyển đầu ra của Get-Process vào lệnh ghép ngắn Where-Object.
Nhận-Quá trình | Where-Object $ _. Name -eq trực iexplore,
Vì vậy, những gì đang xảy ra ở đây bạn yêu cầu? Vâng, điều đầu tiên chúng ta đang làm là lấy một danh sách các tiến trình trên máy tính của chúng ta và chuyển đầu ra (sử dụng ký tự |) cho lệnh ghép ngắn Where-Object của chúng ta, lấy một khối script làm tham số. Khối tập lệnh (được xác định bởi các dấu ngoặc nhọn) chỉ thị cho các lệnh ghép ngắn Where-Object chỉ chọn các đối tượng có tham số tên của chúng bằng với iexplore, và vì vậy chúng tôi chỉ nhận được một danh sách các phiên bản IE đang chạy. Đó là tất cả để có nó, vui chơi!