Trong một nỗ lực gần đây để tự động hóa một tập hợp các tác vụ liên quan, tôi nhận thấy một số trong số chúng có thể được thực hiện nhanh chóng trong powershell và một số trong python. Đây là một điều phổ biến khi bạn là "Jack of all trades and master of nothing". Tôi đang sử dụng ngôn ngữ nào không quan trọng. Tất cả những gì quan trọng là tôi cần quay lại nhanh chóng và thực hiện phân tích sâu hơn từ đầu ra của tập lệnh python được kích hoạt từ tập lệnh powershell Show Đây là kịch bản
Vấn đề ban đầu tôi gặp phải là tệp văn bản đầu ra được tạo bởi tập lệnh powershell không thể đọc được bằng tập lệnh python. Vì vậy, tôi đã phải thay đổi mã hóa thành "ascii" để vượt qua điều này Lỗi python bị ném khi chọn tệp văn bản line 322, in decode (result, consumed) = self._buffer_decode(data, self.errors, final) UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte Đây là những gì tôi phải làm trong tập lệnh powershell để sửa lỗi này - Lưu ý -Encoding ascii $outputData | convertto-json | Out-File -Encoding ascii $outputFileName
Bây giờ đến mấu chốt của bài viết. Kích hoạt tập lệnh python từ powershell $pythonLocation = "C:\Users\Administrator\AppData\Local\Programs\Python\Python37-32\python.exe" $pythonScript = "C:\Users\Administrator\Documents\myPythonScript.py" $currentDate = Get-Date -Format "yyyymmdd_hhmmss" $outputFileName = "C:\output\json\OutputFile_$currentDate.json" .. Powershell Code ... ... ... $outputDict | convertto-json | Out-File -Encoding ascii $outputFileName & $pythonLocation $pythonScript -f $outputFileName -v $inputParams Vì vậy, dòng cuối cùng trong mã kích hoạt tập lệnh python với đầu vào. Bạn có thể kích hoạt bất kỳ tệp thực thi nào khác cũng sử dụng logic tương tự, nhưng vâng, bây giờ bạn đã biết cách thực hiện Tạo tập lệnh tự động để bạn có thể chạy trên nhiều máy tính mà không cần tương tác của người dùng. Ghi chú. Để chạy tập lệnh tự động, bạn phải cài đặt phiên bản chính mới nhất của khung có liên quan trên máy tính mục tiêu . Quan trọng. Để sử dụng tính năng này, người dùng phải được xác thực bằng xác thực không tin cậy, phục vụ cho tính bảo mật của phiên. Xác thực chỉ được yêu cầu một lần khi bạn chạy bước Thực thi từ xa
Kết quả Ghi chú Khi bạn tham chiếu một tệp từ tập lệnh, bạn chỉ cần nhập tên của nó. Khi bước kết thúc, tệp sẽ bị xóa khỏi máy tính từ xa , . Thí dụ
PowerShell có thể chạy tập lệnh không?Bắt đầu trong Windows PowerShell 3. 0, bạn có thể sử dụng tính năng "Chạy bằng PowerShell" để chạy tập lệnh từ File Explorer trong Windows 8 và Windows Server 2012 cũng như từ Windows Explorer trong các phiên bản Windows cũ hơn.
Làm cách nào để sử dụng Python trong Windows PowerShell?Cài đặt Python trên Windows . Bước 1. Tải xuống. Chuyển đến con trăn. org/tải xuống/cửa sổ. . Bước 2. Mở trình cài đặt Python. . Bước 3. Xác minh Python được cài đặt qua PowerShell. . Bước 4. Cập nhật cài đặt PowerShell. . Bước 5. Tạo thư mục Dev. . Bước 6. Cập nhật Pip. . Bước 7. Tạo môi trường ảo. . Bước 8. Cài đặt bất kỳ Gói Python nào Python có thể tương tác với PowerShell không?Có thể chạy PowerShell từ bên trong python bằng quy trình con. run() và chỉ định powershell. đường dẫn exe . Tạo GUI bằng tkinter trong Python dễ dàng một cách đáng ngạc nhiên, nhưng các yếu tố phụ thuộc phải được quản lý. |