Sử dụng Tuyên bố trong PowerShell

Su Dung Tuyen Bo Trong Powershell



PowerShell là ngôn ngữ script và shell dòng lệnh mạnh mẽ, chủ yếu được sử dụng để điều khiển hệ thống máy tính và tự động hóa các công việc quản trị. Việc sử dụng các câu lệnh là một trong những nguyên tắc cơ bản quan trọng nhất của PowerShell. Đặc biệt, “ sử dụng ” đóng một vai trò quan trọng trong việc quản lý tài nguyên và đảm bảo thực thi mã hiệu quả.

Bài viết này sẽ khám phá các khía cạnh khác nhau của câu lệnh “sử dụng” trong PowerShell, bao gồm cú pháp, mục đích và các ứng dụng thực tế của nó.







Mục đích của Tuyên bố “sử dụng”

Câu lệnh “đang sử dụng” cho phép bạn chỉ định không gian tên nào được sử dụng trong phiên. Bằng cách thêm các không gian tên, bạn có thể nhập các lớp từ các mô-đun script và các tập hợp đồng thời đơn giản hóa việc sử dụng các lớp và thành viên .NET.



BẮT BUỘC của Tuyên bố “sử dụng”

  • Câu lệnh “đang sử dụng” phải xuất hiện trước bất kỳ câu lệnh mô-đun hoặc tập lệnh nào khác. Nó không thể được bắt đầu bởi bất kỳ câu lệnh không ghi chú nào, kể cả các tham số.
  • Bất kỳ biến nào không được có mặt trong câu lệnh “đang sử dụng”.
  • Không nên nhầm lẫn câu lệnh “đang sử dụng” với công cụ sửa đổi phạm vi “đang sử dụng:” cho các biến. Cả hai đều khác nhau về mục đích và ý nghĩa của chúng.

Cú pháp của câu lệnh “using”



Cú pháp của câu lệnh “using” là:





sử dụng không gian tên < không gian tên .NET >

Hãy xem tổng quan ví dụ sau:



sử dụng không gian tên System.IO

$byte = [ Tài liệu ] ::ReadAllBytes ( 'D:\c sharp\Linuxhint1.txt' )
[ Nộp thông tin ] ::mới ( 'D:\c sharp\Linuxhint1.txt' )

Trong đoạn mã trên, trước tiên chúng tôi đã chỉ định không gian tên “System.IO”. Dòng thứ hai của chương trình, [File]::ReadAllBytes(‘D:c sharpLinuxhint1.txt’), đọc mọi byte từ tệp được cung cấp và đặt chúng vào biến $Bytes. Ở dòng thứ ba, [FileInfo]::new(‘D:c sharpLinuxhint1.txt’) tạo một thể hiện mới của lớp FileInfo và trả về đối tượng FileInfo.

Tuyên bố 'sử dụng' cho các Mô-đun

Chúng ta cũng có thể sử dụng câu lệnh “using” để tải các lớp của mô-đun.

cú pháp

sử dụng mô-đun < tên mô-đun >

Trong cú pháp này, “”, thông số mô-đun hoàn chỉnh hoặc đường dẫn đến tệp mô-đun có thể được sử dụng làm giá trị cho “tên mô-đun”.

Bạn có thể sử dụng đường dẫn đủ điều kiện hoặc tương đối khi “tên mô-đun>” là một đường dẫn. Khi một câu lệnh 'đang sử dụng' xuất hiện trong một tập lệnh, một đường dẫn tương đối sẽ được giải quyết trong tập lệnh đó.

PowerShell tìm kiếm mô-đun được cung cấp trong PSModulePath khi “” là tên hoặc thông số mô-đun. Các khóa sau tạo nên hashtable là một đặc điểm kỹ thuật của mô-đun:

Tên mô-đun - Yêu cầu. Đặt tên cho mô-đun trong câu hỏi.

GUID tùy chọn – chỉ định GUID của mô-đun.

Ngoài ra, bạn phải chỉ định một trong ba khóa được liệt kê bên dưới.

Phiên bản mô-đun – Phiên bản tối thiểu cho phép của mô-đun được chỉ định thông qua thuộc tính “ModuleVersion”.

Phiên bản tối đa – Xác định phiên bản cho phép cao nhất của mô-đun.

Phiên bản bắt buộc – Xác định phiên bản chính xác, cần thiết của mô-đun bằng cách sử dụng “Phiên bản bắt buộc”. Không thể sử dụng các khóa Phiên bản khác với điều này.

Mô-đun gốc (ModuleToProcess) của mô-đun nhị phân hoặc mô-đun tập lệnh được nhập bằng khai báo mô-đun 'đang sử dụng'. Các lớp được chỉ định trong các mô-đun lồng nhau hoặc tập lệnh được lấy nguồn từ dấu chấm vào mô-đun không được nhập một cách đáng tin cậy. Bất kỳ lớp nào bạn muốn có sẵn cho người dùng bên ngoài mô-đun phải được chỉ định trong mô-đun gốc.

Đây là một ví dụ:

sử dụng mô-đun PSReadline

Tuyên bố 'sử dụng' cho hội đồng

Câu lệnh “đang sử dụng” cũng có thể được sử dụng để tải trước các kiểu từ một tổ hợp .NET.

cú pháp

sử dụng lắp ráp < .NET-assembly-path >

Theo cú pháp này, khi một tập lệnh được tải, các kiểu .NET từ tập hợp đó được tải trước vào tập lệnh trước khi nó được phân tích cú pháp. Do đó, có thể phát triển các lớp PowerShell mới sử dụng các kiểu lắp ráp được tải trước.

Hãy xem một ví dụ về việc áp dụng câu lệnh “using” với một “assembly”:

sử dụng hệ thống lắp ráp.Windows.Forms

Trong lệnh này, chúng tôi đã tải lắp ráp “ System.Windows.Forms” trong PowerShell bằng cách sử dụng câu lệnh 'đang sử dụng'.

Câu lệnh 'sử dụng' cho Khóa Hashtable

Bảng băm ” là các cấu trúc dữ liệu có thể thích ứng được sử dụng trong PowerShell cho nhiều mục đích khác nhau, bao gồm lưu trữ dữ liệu cấu hình, cung cấp đối số cho lệnh ghép ngắn và lưu trữ dữ liệu trong tập lệnh.

Hàm băm mật mã cho chuỗi “ LinuxGợi ý! ” được lấy thông qua tập lệnh sau:

sử dụng không gian tên System.Text
sử dụng không gian tên System.IO [ sợi dây ] $chuỗi = 'LinuxHint!'
[ sợi dây ] thuật toán $ = 'SHA1'

[ byte [ ] ] $stringbytes = [ Mã hóa Unicode ] ::Unicode.GetBytes ( $chuỗi )

[ Suối ] $memorystream = [ Dòng nhớ ] ::mới ( $stringbytes )
$hashtừstream = Get-FileHash -InputStream $memorystream `
-thuật toán thuật toán $
$hashtừstream .Hash.ToString ( )

Mã PowerShell ở trên bắt đầu bằng cách nhập các không gian tên cần thiết cho hoạt động và mã hóa tệp. Chuỗi đầu vào và thuật toán băm (trong trường hợp này là “ SHA1 ”), sau đó được xác định. Chuỗi đầu vào sau đó được mã hóa bằng cách sử dụng “ bảng chữ cái ” để tạo một mảng byte.

Nội dung của mảng byte sau đó được sử dụng để xây dựng một “ dòng ký ức ”. Giá trị băm từ dòng bộ nhớ được tính bằng thuật toán “SHA1” được cung cấp bởi “ Get-FileHash ” lệnh ghép ngắn. Tập lệnh kết thúc bằng cách in giá trị băm thu được dưới dạng chuỗi ra đầu ra.

đầu ra

Phần kết luận

Các ' sử dụng ” câu lệnh trong PowerShell là một công cụ mạnh mẽ để chỉ định không gian tên, mô-đun hoặc tập hợp. Cú pháp và mục đích của nó cung cấp một cách tiếp cận được tiêu chuẩn hóa và an toàn để xử lý tài nguyên, tạo điều kiện xử lý đúng cách và giảm sao chép mã.