5 Cmdlets để giúp bạn bắt đầu với PowerShell

Mục lục:

5 Cmdlets để giúp bạn bắt đầu với PowerShell
5 Cmdlets để giúp bạn bắt đầu với PowerShell

Video: 5 Cmdlets để giúp bạn bắt đầu với PowerShell

Video: 5 Cmdlets để giúp bạn bắt đầu với PowerShell
Video: [Mạng máy tính] Sử dụng phần mềm WiredShark để bắt và phân tích gói tin | thầy Bùi Trọng Tùng - YouTube 2024, Tháng tư
Anonim
PowerShell nhanh chóng trở thành ngôn ngữ kịch bản ưa thích và CLI của Power Users cũng như các Chuyên gia CNTT. Bạn nên học một vài câu lệnh để giúp 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 tìm hiểu ngay hôm nay.
PowerShell nhanh chóng trở thành ngôn ngữ kịch bản ưa thích và CLI của Power Users cũng như các Chuyên gia CNTT. Bạn nên học một vài câu lệnh để giúp 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 tìm hiểu ngay hôm nay.

Get-Command

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 các lệnh ghép ngắn nhất định. Sử dụng Get-Command trên chính nó là thừa nhận không phải là rất hữu ích vì nó chỉ 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à các đầu ra PowerShell có cả thuộc tính Name và thuộc tính ModuleName. Sử dụng thông tin này chúng ta có thể tìm kiếm hạt mịn 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”, tôi có thể thực hiện điều này:
Nhưng từ điều này, chúng ta có thể thấy rằng các đối tượng mà các đầu ra PowerShell có cả thuộc tính Name và thuộc tính ModuleName. Sử dụng thông tin này chúng ta có thể tìm kiếm hạt mịn 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”, tôi có thể thực hiện điều này:

Get-Command –Name *IP*

Như bạn có thể thấy chúng tôi vẫn nhận được khá một vài 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ư bạn có thể thấy chúng tôi vẫn nhận được khá một vài 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.

Get-Command –Module NetTCPIP –Name *IP*

Image
Image

Được giúp đỡ

Một 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 lệnh Get-Command, bạn sẽ muốn biết cú pháp và cách bạn có thể sử dụng lệnh cụ thể đó. Đây là nơi Get-Help đến, nếu bạn đã từng sử dụng dòng lệnh trong Windows, bạn có thể đã làm một cái gì đó như thế này:

ipconfig /?

Điều đó không hiệu quả trong PowerShell, điều này là do trong PowerShell, một không gian được sử dụng để tách biệt một lệnh khỏi các tham số của nó. Vì vậy, thay vào đó chúng ta sử dụng Get-Help và chuyển một tên cmdlets đến Get-Help như một tham số.

Get-Help Get-Process

Image
Image

Nhận thành viên

Get-Member cho phép chúng ta lấy thông tin về các đối tượng mà một lệnh ghép ngắn trả về. Việc bắt kịp với thành viên nhận được, là nó dựa trên tính năng đường ống của PowerShell, để chứng minh điều này, chúng tôi 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 hiển thị cho chúng tôi 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 thuộc tính mà bạn có thể đang tìm kiếm hầu hết thời gian, vẫn còn nhiều hơn nữa. Vấn đề thứ hai là nó không hiển thị bất kỳ phương pháp nào mà chúng tôi 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ể đưa đầu ra của chúng ta vào Get-Member, như sau:
Như bạn có thể thấy đầu ra của PowerShell hiển thị cho chúng tôi 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 thuộc tính mà bạn có thể đang tìm kiếm hầu hết thời gian, vẫn còn nhiều hơn nữa. Vấn đề thứ hai là nó không hiển thị bất kỳ phương pháp nào mà chúng tôi 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ể đưa đầu ra của chúng ta vào Get-Member, như sau:

Get-Process | Get-Member

Mặc dù điều đó có thể không có ý nghĩa gì với bạn ngay bây giờ, bạn sẽ sớm hay muộn cần sử dụng Get-Member và bạn càng sớm càng học cách sử dụng nó càng tốt. Ví dụ, bằng cách sử dụng thông tin từ đầu ra, chúng ta có thể làm một cái gì đó như:
Mặc dù điều đó có thể không có ý nghĩa gì với bạn ngay bây giờ, bạn sẽ sớm hay muộn cần sử dụng Get-Member và bạn càng sớm càng học cách sử dụng nó càng tốt. Ví dụ, bằng cách sử dụng thông tin từ đầu ra, chúng ta có thể làm một cái gì đó như:

Start-Process notepad.exe $NotepadProc = Get-Process -Name notepad $NotepadProc.WaitForExit() Start-Process calc.exe

Kịch bản đó sẽ khởi chạy notepad, sau đó gán đầu ra của “Get-Process –Name notepad” cho biến $ NotepadProc, sau đó chúng ta gọi phương thức WaitForExit trên $ NotepadProc, làm kịch bản tạm dừng cho đến khi bạn đóng notepad, một khi bạn đã đóng notepad sau đó máy tính sẽ khởi động.

$ _ (Đối tượng đường ống hiện tại)

Trong khi không chính xác 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 cho $ _ là “đối tượng đường ống hiện tại”. Nó được sử dụng trong các khối script, các bộ lọc, mệnh đề quy trình của các hàm, trong đó đối tượng, đối tượng foreach và các switch. Tuy nhiên sẽ dễ dàng hơn để giải thích bằng một ví dụ, nó đưa chúng ta đến lệnh ghép ngắn tiếp theo và cuối cùng của chúng ta, Where-Object.

Đối tượng ở đâu

Trường hợp đối tượng thực hiện chính xác những gì nó giống như âm thanh, nó chọn một đối tượng dựa trên việc nó đáp ứng một tiêu chí nhất định. Điều này sẽ mang lại $ _, 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ẽ dẫn đầu ra của Get-Process vào cmdlet Where-Object.

Get-Process | Where-Object {$_.Name –eq “iexplore”}

Đề xuất: