thực thi các tập lệnh powershell thông qua dấu nhắc lệnh - win7


1

Tôi đang gặp sự cố khi chạy tập lệnh powershell tự động. Khi mỗi lần tôi gọi hoặc Thực thi tập lệnh, tôi nhận được lời nhắc bảo mật yêu cầu tôi nhập "R" để chạy. Tôi đã đặt chính sách thực thi thành 'không giới hạn' và đã xác minh thiết lập của nó. Có ai có bất cứ đề nghị?

Cảnh báo bảo mật: Chỉ chạy các tập lệnh mà bạn tin tưởng. trong khi các kịch bản từ   Internet có thể hữu ích, tập lệnh có thể gây hại cho bạn   máy vi tính. Bạn có muốn chạy C: \ test \ win7.ps1 không?

Tôi hiện đang chạy tập lệnh powershell thông qua cuộc gọi powershell.exe trong cmd. Tôi cũng đã cố gắng chạy nó trực tiếp từ powershell và nhận được thông báo lỗi tương tự.

powershell -command C:\nst\win7.ps1 "var1" "var2" "var3"

Tôi cũng đã thử chạy lệnh sau qua cmd:

powershell -executionpolicy unrestricted -command C:\nst\win7.ps1 "var1" "var2" "var3"

Tập lệnh Win7:

$domain = $args[0]
$pwd = $args[2]
$usr = $args[1]
$password = ConvertTo-SecureString $pwd -AsPlainText -Force
$username = "$domain\$usr"
$credential = New-Object System.Management.Automation.PSCredential($username,$password)
Add-Computer -DomainName $domain -Credential $credential

Bất kỳ và tất cả sự giúp đỡ sẽ được đánh giá rất cao


Chỉ cần làm rõ: Khi bạn nói "chạy tập lệnh powershell tự động" thì chính xác điều này có nghĩa là gì? Tự động lúc khởi động qua thư mục khởi động? Tại một thời điểm cụ thể thông qua nhiệm vụ theo lịch trình? --- Ngoài ra, bạn không thể thực thi tập lệnh PS nói chung hay chỉ khi sử dụng CMD trước?
nixda

Câu trả lời:


4

Vấn đề là tập tin bạn đang cố thực hiện có một luồng tập tin thay thế điều đó chỉ ra rằng nó đến từ Internet. Để làm cho tin nhắn biến mất, bạn chỉ cần xóa luồng. Sysiternals có một tiện ích miễn phí gọi là stream.exe Điều đó có thể dễ dàng làm điều này cho bạn. (Nó Điều quan trọng cần lưu ý, như được chỉ ra trong tin nhắn, rằng nếu tệp đã làm đến từ Internet công cộng, bạn nên thận trọng khi thực hiện nó và đảm bảo rằng bạn hiểu hoàn toàn những gì nó sẽ làm.)

Khi bạn có stream.exe, lệnh sẽ là:

streams.exe -d C:\nst\win7.ps1

Xem luồng thay thế từ dòng lệnh có thể khó khăn, tuy nhiên, notepad ++ có thể mở chúng. Trên hệ thống của tôi, lệnh sẽ là:

"c:\Program Files (x86)\Notepad++\notepad++.exe" "e:\temp\test.ps1:Zone.Identifier:$DATA"

Ngoài ra, nếu bạn tò mò, luồng mang đến cho bạn tất cả sự đau buồn chứa đựng:

[ZoneTransfer]
ZoneId=3

Các ZoneIds được xác định là:

Local machine = 0
Intranet      = 1
Trusted       = 2
Internet      = 3
Restricted    = 4
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.