Theo mặc định, tôi muốn PowerShell được khởi chạy thay vì Command khi, giả sử, chạy một tệp bó hoặc khi tôi "Mở cửa sổ lệnh ở đây", v.v.
Bất kỳ đề xuất?
Theo mặc định, tôi muốn PowerShell được khởi chạy thay vì Command khi, giả sử, chạy một tệp bó hoặc khi tôi "Mở cửa sổ lệnh ở đây", v.v.
Bất kỳ đề xuất?
Câu trả lời:
Tôi vừa thực hiện một thử nghiệm rất nhanh và mục đăng ký sau sẽ thêm một mục "PowerShell here" vào menu ngữ cảnh của tất cả các thư mục trong explorer:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\shell\PowerShellHere]
@="&PowerShell here"
[HKEY_CLASSES_ROOT\Directory\shell\PowerShellHere\command]
@="cmd.exe /c start \"PS\" powershell.exe -NoExit -Command \"cd \\\"%1\\\"\""
Chỉ cần nhập nó vào sổ đăng ký. Tôi đang sử dụng cmd.exe
để bootstrap powershell để tránh phải mã hóa đường dẫn.
Về tập lệnh cmd / tập tin bó. Tôi nghĩ rằng mặc định chạy các tập lệnh CMD trong PowerShell không có ý nghĩa gì. Nhưng nó cũng có thể là có thể bằng cách sửa đổi HKCR\cmdfile\shell\open
khoá đăng ký
Bạn sẽ không đi được rất xa với việc chạy các tệp bó CMD trong PowerShell.
Bạn có thể thử thay đổi %COMSPEC%
biến để powershell.exe
sử dụng setx
, nhưng tôi không nghĩ bạn sẽ mất nhiều thời gian để nhận ra rằng đây là một ý tưởng thực sự tồi tệ và thay đổi lại.
lưu tệp dưới dạng * .ps1 thay vì * .bat và nó sẽ sử dụng powershell
%COMSPEC%
sang trình bao không tương thích với CMD, nhưng tôi cho rằng việc thay đổi nó thành PowerShell sẽ dẫn đến .cmd
/ .bat
các tệp cố gắng thực thi trong PowerShell, vì vậy chúng sẽ thất bại. Tôi đã cài đặt rất nhiều phần mềm cần thiết để sử dụng các tệp bó, vì vậy làm điều đó sẽ là một ý tưởng tồi. Ngoài ra, tôi hơi thiên vị, vì tôi luôn sử dụng CMD (thực ra, TCC, là một siêu bộ mở rộng), để quản lý tệp hàng ngày - tôi chỉ sử dụng PowerShell cho công cụ hệ thống, mặc dù tôi có nhiều thứ để tìm hiểu hơn, như nó rất mạnh để so sánh
%ComSpec%
để trỏ đến PowerShell trên hệ thống Win7 của mình. Các .cmd
tập tin cặp đôi đầu tiên tôi đã thử nghiệm hoạt động tốt. Chúng liên quan đến cmd
các cấu trúc đặc thù ( for
, Thao tác biến, if
), vì vậy PS rõ ràng đủ thông minh để biết khi nào cần gọi cmd.exe
.
%ComSpec%
thành powershell sẽ phá vỡ các lệnh điều khiển phiên bản đồng bóng.