Có cách nào khác ngoại trừ $ MyInvocation.InvocationName trong powershell để lấy tên tập lệnh không? Vì tôi cần phải bật kịch bản của mình trong một exe và trong trường hợp đó nó không hoạt động trên exe đó.Nhận tên tập lệnh trong Powershell
Trả lời
Tôi giả sử vì bạn chuyển đổi tập lệnh PowerShell thành tệp thực thi mà bạn sau vị trí của tệp thực thi. Bạn có thể nhận nó theo cách này:.
[Environment]::GetCommandLineArgs()[0]
Vâng mà làm việc đó là wat tôi thực sự muốn cảm ơn rất nhiều jon Z .. :) –
fwiw - nếu bạn đang gỡ lỗi này trong ISE, tên kịch bản trở thành tham số thứ hai: '[Environment] :: GetCommandLineArgs() [1]' –
Nếu bạn muốn một cái gì đó mà làm việc trong và ngoài ISE bạn có thể sử dụng
$MyInvocation.InvocationName
Kể từ đường dẫn đầy đủ và \ YourScript.ps1 thể được trả lại bạn có thể phân tích cú pháp tên với:
[Regex]::Match($MyInvocation.InvocationName, '[^\\]+\Z', [System.Text.RegularExpressions.RegexOptions]::IgnoreCase -bor [System.Text.RegularExpressions.RegexOptions]::SingleLine).Value
- 1. powershell: tập lệnh có biến args
- 2. Chạy tệp tập lệnh SQL từ PowerShell
- 3. Lệnh Powershell trong C#
- 4. Chạy tập lệnh bash từ Windows PowerShell
- 5. Gọi tập lệnh Powershell từ Java
- 6. Cách khởi chạy tập lệnh PowerShell từ dòng lệnh OS?
- 7. Chạy tập lệnh Powershell sống trong điều khiển nguồn TFS
- 8. Kiểm tra quyền quản trị viên trong tập lệnh PowerShell?
- 9. Làm cách nào để chạy tập lệnh PowerShell?
- 10. Cách Thực thi Tập lệnh PowerShell từ SSIS
- 11. Gửi email nếu tập lệnh PowerShell gặp bất kỳ lỗi nào và chấm dứt tập lệnh
- 12. powershell nhận được số dòng lớn (lớn) tập tin
- 13. Tập lệnh powershell của người dùng để đăng lên URL?
- 14. Chức năng PowerShell với khối tập lệnh tham số
- 15. lệnh Chain trong dòng lệnh PowerShell
- 16. PHP Powershell lệnh
- 17. Đường dẫn của tập lệnh hiện hành PowerShell
- 18. Phiên bản .NET nào là tập lệnh PowerShell của tôi?
- 19. Chạy tập lệnh PowerShell trên PC từ xa
- 20. Đệ quy đổi tên tệp trong Powershell
- 21. lệnh Run PowerShell trong C#
- 22. Buộc chạy tập lệnh PowerShell làm quản trị viên
- 23. backbone.js và tập lệnh tên miền chéo
- 24. Lấy tên Múi giờ của Canonical trong tập lệnh shell
- 25. Cách tìm tệp mới nhất trong thư mục bằng tập lệnh PowerShell?
- 26. Làm cách nào để nhận được tên tập lệnh được thực thi trong bash?
- 27. Cách khởi chạy PowerShell (không phải tập lệnh) từ dòng lệnh
- 28. Powershell tương đương với lệnh Chọn LINQ?
- 29. Nhận ADFS Mã trong Powershell
- 30. tập lệnh không nhận dạng được FSharp.Data
Cách bạn gọi exe và cách bạn chuyển tên tập lệnh? –
Tôi chuyển đổi các tập lệnh vào exe bằng cách sử dụng một tiện ích .. các chức năng hoạt động tốt với kịch bản nhưng nếu tôi sử dụng exe thay cho kịch bản nó không hoạt động .. –
Cách duy nhất tôi biết là sử dụng $ Myinvocation. Có lẽ tiện ích (PS2EXE có thể§ ??) không thể chuyển đổi thuộc tính PSCmdlet.MyInvocation đề cập đến một exe hoặc bao vây của mình. –