/ / Jak uruchomić PowerShell z Eksploratora Windows? - windows, powershell

Jak uruchomić PowerShell z Eksploratora Windows? - okna, powershell

Czy istnieje sposób na uruchomienie PowerShell w określonym folderze z Eksploratora Windows, np. aby kliknąć folder prawym przyciskiem myszy i mieć opcję, taką jak „Otwórz PowerShell w tym folderze”?

To naprawdę denerwujące, gdy trzeba zmieniać katalogi do folderu mojego projektu przy pierwszym uruchomieniu programu MSBuild każdego dnia.

Odpowiedzi:

461 na odpowiedź nr 1

W Eksploratorze Windows po prostu przejdź do paska adresu u góry (skróty klawiaturowe: Alt+re lub Ctrl+L) i wpisz powershell lub powershell_ise i naciśnij Wchodzić. Otworzy się okno poleceń programu PowerShell z bieżącym katalogiem.


96 dla odpowiedzi nr 2

Aby dodać coś odwrotnego jako sztuczka, po wyświetleniu monitu PowerShell możesz:

ii .

lub

start .

aby otworzyć okno Eksploratora Windows w bieżącym katalogu.


61 dla odpowiedzi nr 3

Jeśli korzystasz z systemu Windows 8 lub nowszego, możesz po prostu użyć wbudowanego Plik → „Otwórz program Windows PowerShell”.

Lub Alt + fa śledzony przez R.


55 za odpowiedź № 4

http://www.hanselman.com/blog/IntroducingPowerShellPromptHere.aspx

Scott Hanselman ma naprawdę prostą informację, która zrobi to za Ciebie. Jeśli chcesz ulepszyć skrypt, bardzo łatwo jest przejść i edytować plik inf w celu dostosowania.


39 za odpowiedź nr 5

Alternatywnie do powyższej odpowiedzi, która wymaga wpisania polecenia PowerShell (powershell.exe) za każdym razem możesz utworzyć pozycję menu kontekstowego, tak jak w przypadku „Otwórz tutaj okno poleceń" menu kontekstowe.

Istnieją trzy klucze rejestru, do których trafiają te polecenia. Każdy klawisz steruje menu kontekstowym innego obiektu Eksploratora Windows. Pierwsza to ta, o którą pytałeś:

  • HKCRDirectoryBackgroundshell - To jest menu kontekstowe samego okna Eksploratora (to znaczy menu kontekstowego, które jest wyświetlane, gdy żaden element nie jest wybrany, na przykład po kliknięciu prawym przyciskiem myszy w pustym obszarze okna).
  • HKCRDirectoryshell - To jest menu kontekstowe folderów w Eksploratorze Windows.
  • HKCRDriveshell - To jest menu kontekstowe ikon dysków w katalogu głównym Eksploratora Windows.

Do każdego z tych kluczy rejestru można dodać podklucz, który doda polecenie „Otwórz tutaj okno programu PowerShell” do menu kontekstowego, tak jak w przypadku menu kontekstowego „Otwórz tutaj okno poleceń”.

Oto kopia mojego OpenPowerShellHere.reg plik, który umieszcza polecenie w menu kontekstowym każdego z obiektów Eksploratora, tła okna, folderu i ikony dysku:

Windows Registry Editor Version 5.00

;
; Add context menu entry to Windows Explorer background
;
[HKEY_CLASSES_ROOTDirectoryBackgroundshellpowershell]
@="Open PowerShell window here"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOTDirectoryBackgroundshellpowershellcommand]
@="C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoExit -Command Set-Location -LiteralPath "%V""

;
; Add context menu entry to Windows Explorer folders
;
[HKEY_CLASSES_ROOTDirectoryshellpowershell]
@="Open PowerShell window here"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOTDirectoryshellpowershellcommand]
@="C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoExit -Command Set-Location -LiteralPath "%V""

;
; Add context menu entry to Windows Explorer drive icons
;
[HKEY_CLASSES_ROOTDriveshellpowershell]
@="Open PowerShell window here"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOTDriveshellpowershellcommand]
@="C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoExit -Command Set-Location -LiteralPath "%V""

W swoim ulubionym edytorze tekstu otwórz nowy plik o nazwie OpenPowerShellHere.reg. Skopiuj plik dokładny tekst powyższego kodu, wklej go do nowego pliku i zapisz. (Załączyłbym kopię pliku, ale nie mogłem się dowiedzieć, czy załączniki są możliwe). Jeśli chcesz wykluczać polecenie z jednego z wpisów, po prostu zakomentuj odpowiednią sekcję średnikami. Moje komentarze pokazują każdą sekcję.

Po zapisaniu pliku uruchom go, klikając go dwukrotnie. Kiedy zapyta, powiedz mu, aby kontynuował. Zaraz po uruchomieniu pojawią się pozycje menu kontekstowego!

Oto moje menu kontekstowe okna Eksploratora. Podświetliłem konsolę i polecenia programu PowerShell. Jak widać, można również dodać pozycję menu kontekstowego, aby uruchomić okno poleceń z podwyższonym poziomem uprawnień, tj. Uruchom jako administrator.

Wpis PowerShell w menu kontekstowym Eksploratora

Uwaga: Wpisy menu kontekstowego są wyświetlane alfabetycznie na podstawie kluczy rejestru. Nazwa klucza powłoki poleceń z podwyższonym poziomem uprawnień to „Uruchom jako”, dlatego pojawia się po wpisie PowerShell.


32 za odpowiedź № 6

Możesz pobrać plik inf stąd - Przedstawiamy monit PowerShell tutaj


11 dla odpowiedzi № 7

W systemie Windows 10 zarówno wiersz polecenia, jak iMonit PowerShell można znaleźć na pasku menu, zarówno dla osób niebędących administratorami, jak i administratorów. Te opcje spowodują, że jego folder zostanie ustawiony na aktualnie wybrany folder z eksploratora.

Przynajmniej w wersji szwedzkiej PowerShell jest otwierany za pomocą Alt F + I. Dla administratora PowerShell jest to Alt F + S + P.

Menu programu Windows Powershell

Jeśli to nie są prawidłowe znaki, możesz nacisnąć i przytrzymać Alt aby zobaczyć poprawne znaki. na każdym kroku pojawi się znak nakładający się na pozycję menu.


5 dla odpowiedzi № 8

Chciałem, aby to menu kontekstowe działało tylko wtedy, gdy kliknięcie prawym przyciskiem i trzymać "SHIFT", czyli jak działa wbudowane menu kontekstowe "Otwórz tutaj okno poleceń".

Jednak żadne z dostarczonych rozwiązań tego nie zrobiło, więc musiałem stworzyć własne .reg plik - skopiuj poniższy plik, zapisz go jako power-shell-here-on-shift.reg i kliknij go dwukrotnie.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOTDirectoryshellpowershell]
@="Open PowerShell here"
"NoWorkingDirectory"=""
"Extended"=""

[HKEY_CLASSES_ROOTDirectoryshellpowershellcommand]
@="C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe -NoExit -Command Set-Location -LiteralPath "%L""

otwórz tutaj powłokę zasilania, przytrzymując klawisz Shift i naciskając prawy przycisk myszy


4 dla odpowiedzi nr 9

Jest to jeszcze łatwiejsze w systemach Windows 8.1 i Server 2012 R2.

Zrób to raz: Kliknij prawym przyciskiem myszy pasek zadań, wybierz Właściwości. Na karcie Nawigacja włącz [✓] Zastąp wiersz polecenia programem Windows PowerShell w menu po kliknięciu prawym przyciskiem myszy w lewym dolnym rogu lub naciśnięciu klawisza Windows + X.

Następnie, gdy chcesz otrzymać monit PowerShell, naciśnij Wygraj + X, ja. (Lub Wygraj + X, ZA dla monitu Admin PowerShell)


4 dla odpowiedzi № 10

Spróbuj PowerShell PowerToy... Dodaje element menu kontekstowego dla Otwórz program PowerShell tutaj.

Możesz też utworzyć skrót otwierający PowerShell z folderem Rozpocznij w będącym folderem Projekty.


3 dla odpowiedzi № 11

Istnieje rozszerzenie Eksploratora Windows stworzone przez gościa, który tworzy narzędzia dla SVN, które przynajmniej otworzą okno wiersza poleceń.

Jeszcze tego nie wypróbowałem, więc nie wiem, czy to zrobi PowerShell, ale chciałem podzielić się miłością z moimi braćmi Stack Overflow:

http://tools.tortoisesvn.net/StExBar


2 dla odpowiedzi № 12

Inną opcją są doskonałe Elevation PowerToys autorstwa Michaela Murgolo w TechNet pod adresem http://technet.microsoft.com/en-us/magazine/2008.06.elevation.aspx.

Obejmują one opcję PowerShell Prompt Here i PowerShell Prompt Here jako administrator.


2 dla odpowiedzi № 13

Poniżej znajduje się zwięzłe (i zaktualizowane) podsumowanie wcześniejszych rozwiązań. Oto, co należy zrobić:

Dodaj te ciągi i odpowiadające im klucze nadrzędne:

pwrshell(Default) < Open PowerShell Here
pwrshellcommand(Default) < powershell -NoExit -Command Set-Location -LiteralPath "%V"
pwrshelladmin(Default) < Open PowerShell (Admin)
pwrshelladmincommand(Default) < powershell -Command Start-Process -verb runAs -ArgumentList "-NoExit","cd","%V" powershell

w tych lokalizacjach

HKCRDirectoryshell (for folders)
HKCRDirectoryBackgroundshell (Explorer window)
HKCRDriveshell (for root drives)

To wszystko. Dodaj ciągi „Rozszerzone”, aby polecenia były widoczne tylko wtedy, gdy trzymasz klawisz „Shift”, wszystko inne jest zbędne.


1 dla odpowiedzi № 14

Dodając poniższe klucze rejestru, w systemie Windows 10 udało mi się uzyskać rozszerzenie Otwórz program PowerShell tutaj opcja w moim SHIFT + RClick menu kontekstowe. Po prostu skopiuj je do pustego pliku notatnika, a następnie zapisz jako plik .reg plik i uruchom plik, aby dodać klucz i powinien działać z tego miejsca. Niektóre z tych innych odpowiedzi mówią o dodaniu klucza do HKCRDirectoryshell ale odkryłem, że dla mnie działało tylko z kluczami wchodzącymi do HKLMSOFTWAREClassesDirectoryshell

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINESOFTWAREClassesDirectorybackgroundshellpowershell]
"Extended"=""
"NoWorkingDirectory"=""
@="Open PowerShell here"
"Icon"="%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe"

[HKEY_LOCAL_MACHINESOFTWAREClassesDirectorybackgroundshellpowershellcommand]
@="C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe -NoExit -Command Set-Location -LiteralPath "%V""

[HKEY_LOCAL_MACHINESOFTWAREClassesDirectoryshellpowershell]
@="Open PowerShell here"
"Extended"=""
"Icon"="%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe"
"NoWorkingDirectory"=""

[HKEY_LOCAL_MACHINESOFTWAREClassesDirectoryshellpowershellcommand]
@="C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe -NoExit -Command Set-Location -LiteralPath "%V""

1 dla odpowiedzi № 15
New-PSDrive -Name HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT
if(-not (Test-Path -Path "HKCR:Directoryshell$KeyName"))
{
Try
{
New-Item -itemType String "HKCR:Directoryshell$KeyName" -value "Open PowerShell in this Folder" -ErrorAction Stop
New-Item -itemType String "HKCR:Directoryshell$KeyNamecommand" -value "$env:SystemRootsystem32WindowsPowerShellv1.0powershell.exe -noexit -command Set-Location "%V"" -ErrorAction Stop
Write-Host "Successfully!"
}
Catch
{
Write-Error $_.Exception.Message
}
}
else
{
Write-Warning "The specified key name already exists. Type another name and try again."
}

Możesz pobrać skrypt szczegółów z jak uruchomić PowerShell z Eksploratora Windows


1 dla odpowiedzi № 16

Jedną dość prostą alternatywą jest wywołanie PowerShell za pomocą skrótu. Istnieje właściwość skrótu oznaczona „Rozpocznij w”, która mówi, jakiego katalogu (folderu) użyć, gdy skrót jest wywoływany.

Jeśli pole Rozpocznij w jest puste, oznacza to, że użyj bieżącego katalogu.

Kiedy po raz pierwszy tworzysz skrót do programu PowerShell ww zwykły sposób początek w polu określa katalog domowy. Jeśli wyczyścisz pole start w polu, masz teraz skrót do programu PowerShell, który otwiera PS w bieżącym katalogu, cokolwiek to jest.

Jeśli teraz skopiujesz ten skrót do katalogu docelowego i użyjesz eksploratora, aby go wywołać, uruchomisz PS, który będzie wskazywał na katalog docelowy.

Istnieje już zaakceptowana odpowiedź na to pytanie, ale proponuję to jako inny sposób.


1 dla odpowiedzi № 17

Dla użytkowników autohotkey, oto fragment, którego używam

Po naciśnięciu otwiera okno PowerShell Ctrl-Alt-T. (Testowane z Win10)

Jeśli Twoim „aktywnym oknem” jest okno Eksploratora Windows, to PowerShell jest otwierany w bieżący folder. W przeciwnym razie po prostu otwórz PowerShell w niektórych domyślny folder.

Sposób użycia: 1) Zainstaluj AutoHotkey i skopiuj wklej to do myscript.ahk 2) Zamień <DefaultPath> wybraną ścieżką. 3) Uruchom skrypt.

; Ctrl-Alt-T opens PowerShell in the current folder, if using Windows Explorer. Otherwise, just open the Powershell.
^!T::
if WinActive("ahk_class CabinetWClass") and WinActive("ahk_exe explorer.exe")
{
KeyWait Control
KeyWait Alt
Send {Ctrl down}l{Ctrl up}
Send powershell{Enter}
}
else
{
psScript =
(
cd "C:<DefaultPath>"
ls
)
Run "%SystemRoot%system32WindowsPowerShellv1.0powershell.exe" -NoExit -Command &{%psScript%}
}
return