Domyślnie chciałbym, aby PowerShell był uruchamiany zamiast Command, gdy powiedzmy, uruchamiając plik wsadowy lub gdy „Otwieram okno poleceń tutaj” itp.
Jakieś sugestie?
windows-7
powershell
batch-file
Ipsquiggle
źródło
źródło
Odpowiedzi:
Właśnie wykonałem bardzo szybki test i następujący wpis rejestru doda pozycję „PowerShell tutaj” do menu kontekstowego wszystkich folderów w eksploratorze:
Po prostu zaimportuj go do rejestru. Używam
cmd.exe
do ładowania PowerShell, aby uniknąć konieczności kodowania ścieżki na stałe.Odnośnie skryptów cmd / plików wsadowych. Myślę, że domyślnie nie ma sensu uruchamiać skryptów CMD w PowerShell. Ale może to być również możliwe poprzez modyfikację
HKCR\cmdfile\shell\open
klucza rejestruźródło
Nie zajdziesz daleko za sprawą uruchamiania plików wsadowych CMD w PowerShell.
Możesz spróbować zmienić
%COMSPEC%
zmienną tak, by wskazywała napowershell.exe
użyciesetx
, ale nie sądzę, że zajmie ci to dużo czasu, zanim zorientujesz się, że to naprawdę zły pomysł, i zmień ją ponownie.zapisz plik jako * .ps1 zamiast * .bat, a on użyje programu PowerShell
źródło
%COMSPEC%
na powłokę niezgodną z CMD, ale zakładam, że zmiana na PowerShell spowodowałaby, że.cmd
/.bat
pliki próbowałyby uruchomić się w PowerShell, więc nie powiodłyby się. Zainstalowałem wiele programów, które wymagały użycia plików wsadowych, więc zrobienie tego byłoby złym pomysłem. Jestem również nieco stronniczy, ponieważ cały czas używam CMD (właściwie TCC, który jest rozszerzonym nadzbiorem), do codziennego zarządzania plikami - używam PowerShell tylko do rzeczy systemowych, chociaż mam o wiele więcej do nauczenia się, ponieważ jest tak potężny w porównaniu.%ComSpec%
aby wskazać PowerShell w moim systemie Win7. Pierwsze kilka.cmd
plików, które przetestowałem, działa dobrze. Obejmują onecmd
konstrukty specyficzne (for
, Zmienna manipulacjaif
), więc PS jest najwyraźniej wystarczająco inteligentny, aby wiedzieć, kiedy musi się wywołaćcmd.exe
.%ComSpec%
na PowerShell przerywa komendy kontroli wersji rtęciowej.