Kịch bản khá thẳng về phía trước. Đơn giản chỉ cần cố gắng để bắt đầu một loạt các dịch vụ windows. Thực thi cục bộ hoạt động tốt khi trên máy mục tiêu. Kịch bản cũng thực sự hoạt động tốt khi được thực hiện thông qua PsExec, nó chỉ không bao giờ quay trở lại cho đến khi tôi nhấn phím "enter" trên dấu nhắc của CMD. Đây là một vấn đề, bởi vì điều này đang được gọi từ TeamCity, và nó khiến Đại lý treo chờ đợi PsExec trở lại.
Tôi đã thử như sau:
- Thêm
exit
vàexit 0
ở cuối tập lệnh Powershell - Thêm một
< NUL
vào cuối cuộc gọi PsExec, theo câu trả lời trong câu hỏi SF này - Thêm một
>
chuyển hướng xuất sắc
Đây là cách tôi thực sự gọi psexec:
psexec \\target -u domain\username -p password powershell c:\path\script.ps1
Bất kể tôi làm gì, nó vẫn treo cho đến khi tôi cục bộ trên dấu nhắc cmd. Sau khi tôi nhấn enter, tôi nhận được thông báo:
powershell exited on target with error code 0.