WindowsエクスプローラーからPowerShellを起動するにはどうすればよいですか?


259

Windowsエクスプローラーから特定のフォルダーでPowerShellを起動する方法はありますか。たとえば、フォルダーを右クリックして、「PowerShellをこのフォルダーで開く」のようなオプションがありますか?

初めてMSBuildを毎日実行するときに、ディレクトリをプロジェクトフォルダーに変更しなければならないのは本当に面倒です。


16
[Alt] [F + S + A]は、現在のフォルダーで管理者のPowerShellを開始します。少なくともWindows 10の場合。
Rosdi Kasim 2016

回答:


526

Windowsエクスプローラーで、上部のアドレスバーに移動し(キーボードショートカット:Alt+ DまたはCtrl+ L)、powershellor powershell_iseと入力してを押しEnterます。PowerShellコマンドウィンドウが開き、現在のディレクトリが表示されます。


3
Win 7でこれを行うと、WindowsエクスプローラーでPowerShellという名前のフォルダーに移動します。
Sabuncu 2013年

35
Windows 8以降を使用している場合は、組み込みの[ファイル]-> [Windows PowerShellを開く]を使用するだけです
Vivek Maharajh

7
起動ディレクトリを設定するPowerShellプロファイルがある場合も機能しません。プロファイルなしで起動したい場合は、「powershell -noprofile」を使用できますが、プロファイルの設定はすべて失われます。常にトレードオフがあります。
grahamesd 2014年

9
管理者としてそれを開くショートカットはありますか?
Arsalan Ahmad 14

3
powershellの代わりにpowershell_iseと入力することもできます。これは、最終的にサイズ変更可能で適切なフォントが含まれているため、より優れています。
マイケルS.

106

裏技を裏技として追加するために、PowerShellプロンプトで次のことができます。

ii .

または

start .

現在のディレクトリでWindows Explorerウィンドウを開きます。


1
@EBGreen、どういうii意味ですか?
Pacerier 2014

5
まあ、Powershellプロンプトで次のように入力するだけです:Get-Command ii次に、それがInvoke-Itemのエイリアスであることがわかります。
EBGreen 2014

78

Windows 8以降を使用している場合は、組み込みの[ファイル] →[Windows PowerShellを開く]を使用するだけです。

またはAlt+のF後にR


1
うん。「管理者として起動」バージョンも固定しました。
Vivek Maharajh 2014

@Andrej、どうやってやるの?
Pacerier 2014

1
@Pacerier、対応するメニュー項目(たとえば、「Windows PowerShellを開く」)でマウスの右ボタン。
Andrej

@Andrej、「ピン留め」とは、「クイックアクセスツールバーに追加」オプションを意味しますか?
Pacerier、2015年

1
@Pacerier、それが彼の意味だと私はかなり確信している。タスクバーにピン留めすることもできます。開いたら、タスクバーのアイコンを右クリックしてピン留めします。
Vivek Maharajh 2015年

57

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

スコット・ハンセルマンはあなたのためにこれを行う本当にシンプルなinfを持っています。スクリプトを調整したい場合は、カスタマイズしてinfを編集するのは非常に簡単です。


要約を提供できますか(たとえば、リンクの腐敗は常に問題です)?
Peter Mortensen

「この」における「INF」とは何ですか?
Peter Mortensen

44

毎回PowerShellコマンド(powershell.exe)を入力する必要がある上記の回答の代わりに、「ここでコマンドウィンドウを開く」コンテキストメニューと同じようにコンテキストメニューエントリを作成できます。

これらのコマンドが実行される場所には、3つのレジストリキーがあります。各キーは、異なるWindowsエクスプローラーオブジェクトのコンテキストメニューを制御します。最初のものはあなたが尋ねたものです:

  • HKCR \ Directory \ Background \ shellこれは、エクスプローラーウィンドウ自体のコンテキストメニューです(つまり、ウィンドウの空の領域を右クリックしたときなど、アイテムが選択されていないときに表示されるコンテキストメニュー)。
  • HKCR \ Directory \ shellこれは、Windowsエクスプローラーのフォルダーのコンテキストメニューです。
  • HKCR \ Drive \ shell-これは、Windowsエクスプローラーのルートにあるドライブアイコンのコンテキストメニューです。

これらのレジストリキーごとに、「ここにコマンドウィンドウを開く」コンテキストメニューがあるのと同じように、「ここにPowerShellウィンドウを開く」コマンドをコンテキストメニューに追加するサブキーを追加できます。

OpenPowerShellHere.regファイルのコピーを次に示します。このコマンドは、各Explorerオブジェクト、ウィンドウの背景、フォルダー、ドライブアイコンのコンテキストメニューにコマンドを配置します。

Windows Registry Editor Version 5.00

;
; Add context menu entry to Windows Explorer background
;
[HKEY_CLASSES_ROOT\Directory\Background\shell\powershell]
@="Open PowerShell window here"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\powershell\command]
@="C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe -NoExit -Command Set-Location -LiteralPath '%V'"

;
; Add context menu entry to Windows Explorer folders
;
[HKEY_CLASSES_ROOT\Directory\shell\powershell]
@="Open PowerShell window here"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\Directory\shell\powershell\command]
@="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_ROOT\Drive\shell\powershell]
@="Open PowerShell window here"
"NoWorkingDirectory"=""

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

したがって、お気に入りのテキストエディタで、OpenPowerShellHere.regという名前の新しいファイルを開きます。上記のコードの正確なテキストをコピーし、新しいファイルに貼り付けて保存します。(ファイルのコピーを含めたはずですが、添付が可能かどうかわかりませんでした。)除外する場合エントリの1つからコマンドは、セミコロンで適切なセクションをコメントアウトします。私のコメントは各セクションを示しています。

ファイルを保存したら、それをダブルクリックして実行します。尋ねられたら、続行するように伝えます。実行するとすぐに、コンテキストメニューのエントリが表示されます。

これがエクスプローラウィンドウのコンテキストメニューです。コンソールとPowerShellコマンドを強調表示しました。ご覧のとおり、管理者特権のコマンドウィンドウを実行するためのコンテキストメニューエントリ、つまり[ 管理者として実行]を追加することもできます。

エクスプローラーのコンテキストメニューのPowerShellエントリ

:コンテキストメニューのエントリは、レジストリキーに基づいてアルファベット順に表示されます。管理者特権のコマンドシェルのキー名は「runas」です。これが、PowerShellエントリの後に来る理由です。

:エクスプローラウィンドウを開いている場合は、変更を有効にするために、いったん閉じてから再度開く必要がある場合があります。

:Windows 7ではHKCR\Directory\Shell、エクスプローラーの側面にあるツールキットを使用すると機能しません

(つまり、[ライブラリ]ヘッダーの下の[ドキュメント]をクリック)

を使用してナビゲートする必要があります Computer -> C: -> to -> Some -> Target -> Directory


ここでの1つの問題は、このコンテキストメニューを使用してPSウィンドウを開き、と入力するgit help <cmd>と、PSウィンドウのHTMLヘルプファイルがプレーンテキストとしてダンプされることです。スタートメニューを使用すると、そのPSウィンドウがブラウザーを本来のように開きます。
ProfK 2015年

@ProfK、「git」を使用していないため、何が起こっているのかわかりませんが、このコンテキストメニューを使用して開くPSウィンドウは、スタートメニューを使用して開くPSウィンドウと同一です。スタートメニューからPowerShell ISEを実行する場合。その場合は、上記のレジストリファイルの「powershell.exe」を「powershell_ise.exe」に変更してください。通常のPowerShellを実行している場合は、起動するディレクトリ以外に違いはありません。スタートメニューコマンドはユーザーディレクトリから始まりますが、コンテキストメニューはローカルディレクトリから始まります。
geo

@ProfK、違いを生じているのは開始ディレクトリである可能性はありますか?'git'に関するユーザーディレクトリに何かがある場合は、おそらくそれが違います。コンテキストメニューの主な目的は、ローカルディレクトリでPSを開くことですが、「git」コマンドが現在のディレクトリに基づいて異なる方法で実行される場合、それが問題になる可能性があります。ディレクトリの違いとPSとPS ISEの違いだけが私が考えることができるものです。
GEO

@geoすべてのフィードバックに感謝しますが、エクスプローラーでhtmlファイルをダブルクリックするとNotepad ++で開かれることがわかりました。デフォルトの[アプリで開く]をChromeに設定しましたが、同時にPosh-Gitもインストールしましたが、GitヘルプはPSではなくChromeで開きます。悲しいことは、修正されたものを変更したのかわかりません。
ProfK 2015年

1
昇格したPSプロンプトを追加するPSスクリプト(昇格していない場合はHasLUAShield行を削除)は@ powershellmagazine.com
James Manning、


14

Windows 10では、非管理者と管理者の両方に対して、コマンドプロンプトとPowerShellプロンプトの両方をメニューバーから見つけることができます。これらのオプションでは、エクスプローラーから現在選択されているフォルダーにフォルダーが設定されます。

少なくともスウェーデン語版の場合、Powershellはで開きAlt F+Iます。管理者のpowershellの場合はAlt F+S+Pです。

Windows Powershellメニュー

それらが正しい文字でない場合は、Altキーを押し続けると正しい文字が表示されます。各ステップのメニュー項目を覆う文字があります。


2
私のWindows 10(英語版)の管理者PowerShellの[Alt] [F + S + A]
Rosdi Kasim

6

組み込みの「コマンドウィンドウをここに開く」コンテキストメニューが機能する方法である「Shift」を右クリックして押したときにのみ、このコンテキストメニューが機能するようにしたいと思いました。

しかし、提供されたソリューションのどれもそれをしなかったので、私は自分の.regファイルをロールする必要がありました-以下をコピーし、名前を付けて保存してpower-shell-here-on-shift.reg、それをダブルクリックしてください。

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\shell\powershell]
@="Open PowerShell here"
"NoWorkingDirectory"=""
"Extended"=""

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

Shiftを押しながら右クリックしながら、Power Shellをここで開きます



3

Windows 8.1とServer 2012 R2ではさらに簡単です。

これを1回実行します。タスクバーを右クリックして、[プロパティ]を選択します。ナビゲーションタブで、左下隅を右クリックするか、Windowsキー+ Xを押すと、メニューの[✓]コマンドプロンプトをWindows PowerShellに置き換えますをオンにします

そして、あなたはPowerShellのプロンプト、ヒットをいつでもWin+XI。(またはWin+XAAdmin PowerShellプロンプトの場合)


4
素晴らしいショートカットですが、これは現在のフォルダーでPowerShellを起動しません。
steenhulthin、2014年

3

以下は、以前のソリューションの簡潔な(そして更新された)要約です。ここでは何をすべきかです:

これらの文字列とそれぞれの親キーを追加します。

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

これらの場所で

HKCR\Directory\shell (for folders)
HKCR\Directory\Background\shell (Explorer window)
HKCR\Drive\shell (for root drives)

それでおしまい。コマンドの「拡張」文字列を追加して、「Shift」キーを押した場合にのみ表示されるようにします。それ以外はすべて不要です。


3

少なくともコマンドプロンプトウィンドウを開くSVN用のツールを作成する人によって作成されたWindowsエクスプローラー拡張機能があります。

私はまだ試していないので、PowerShellが機能するかどうかはわかりませんが、愛をStack Overflowの仲間と共有したいと思います。

http://tools.tortoisesvn.net/StExBar


2

別のオプションは、http: //technet.microsoft.com/en-us/magazine/2008.06.elevation.aspxにあるTechNetのMichael Murgoloによる優れたElevation PowerToysです。です。

ここには、PowerShellプロンプトここと管理者としてのPowerShellプロンプトここが含まれます。


このリンクで質問に答えることができますが、回答の重要な部分をここに含め、参照用のリンクを提供することをお勧めします。リンクされたページが変更されると、リンクのみの回答が無効になる可能性があります。
ランディン2014

これは、リンクを投稿するときに考慮すべき有効なポイントです。ただし、リンクされた記事には、Elevation PowerToysへの正式なダウンロードが含まれています。これ、回答の重要な部分です。
マークラーソン、

2

以下のレジストリキーを追加することにより、Windows 10では、コンテキストメニューに[ PowerShellをここで開く ]オプションを取得できましたSHIFT + RClick。これらを空のメモ帳ファイルにコピーしてから.regファイルとして保存し、ファイルを実行してキーを追加すれば、そこから機能します。これらの他の回答のいくつかは、HKCR \ Directory \ shellにキーを追加するように言っていますが、私にとっては、HKLM \ SOFTWARE \ Classes \ Directory \ shellに入るキーでのみ機能することがわかりました

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\background\shell\powershell]
"Extended"=""
"NoWorkingDirectory"=""
@="Open PowerShell here"
"Icon"="%SystemRoot%\\system32\\WindowsPowerShell\\v1.0\\powershell.exe"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\background\shell\powershell\command]
@="C:\\Windows\\system32\\WindowsPowerShell\\v1.0\\powershell.exe -NoExit -Command Set-Location -LiteralPath '%V'"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\powershell]
@="Open PowerShell here"
"Extended"=""
"Icon"="%SystemRoot%\\system32\\WindowsPowerShell\\v1.0\\powershell.exe"
"NoWorkingDirectory"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\powershell\command]
@="C:\\Windows\\system32\\WindowsPowerShell\\v1.0\\powershell.exe -NoExit -Command Set-Location -LiteralPath '%V'"

1
New-PSDrive -Name HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT
if(-not (Test-Path -Path "HKCR:\Directory\shell\$KeyName"))
{
    Try
    {
        New-Item -itemType String "HKCR:\Directory\shell\$KeyName" -value "Open PowerShell in this Folder" -ErrorAction Stop
        New-Item -itemType String "HKCR:\Directory\shell\$KeyName\command" -value "$env:SystemRoot\system32\WindowsPowerShell\v1.0\powershell.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."
}

WindowsエクスプローラーからPowerShellを起動する方法から詳細スクリプトをダウンロードできます


1

かなり簡単な代替策の1つは、ショートカットを介してPowerShellを呼び出すことです。「開始」というラベルのショートカットプロパティがあり、ショートカットが呼び出されたときに使用するディレクトリ(フォルダ)を示します。

開始ボックスが空白の場合は、現在のディレクトリを使用することを意味します。

通常の方法でPowerShellへのショートカットを最初に作成するとき、開始ボックスはホームディレクトリを指定します。開始ボックスを空白にすると、現在のディレクトリにあるPSを開くPowerShellへのショートカットがあります。

このショートカットをターゲットディレクトリにコピーし、エクスプローラーを使用してそれを呼び出すと、ターゲットディレクトリを指すPSが起動します。

この質問に対する回答はすでに認められていますが、別の方法としてこれを提供します。


1

オートホットキーユーザーのために、私が使用しているスニペットはこちらです

を押すと、PowerShellウィンドウが開きますCtrl-Alt-T。(Win10でテスト済み)

「アクティブウィンドウ」がWindowsエクスプローラーウィンドウの場合、PowerShellが現在のフォルダーで開かれます。それ以外の場合は、デフォルトのフォルダで PowerShellを開きます

使用法:1)AutoHotkeyをインストールし、これをmyscript.ahkにコピーして貼り付けます。2)<DefaultPath>任意のパスに置き換えます。3)スクリプトを実行します。

; 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%\system32\WindowsPowerShell\v1.0\powershell.exe" -NoExit -Command &{%psScript%}
}
return

1

誰もこの答えを出していないことに驚いています。これが最も簡単な答えです。(年でなければなりません。)

エクスプローラでShift +右クリックするだけです。次に、「PowerShellウィンドウをここで開く」ことができます。

デフォルトでは、コマンドプロンプトに設定されている場合があります。その場合は、Windows 10の設定でこれを変更できます:パーソナライゼーション->タスクバーに移動し、[スタートボタンを右クリックするか、Windowsキー+ Xを押すと、メニューの[コマンドプロンプトをWindows PowerShellに置き換える]を有効にします。


1

Windows 10により、はるかに簡単になりました。次のいずれかを行うことができます。

  • フォルダを[SHIFT] + [右クリック]すると、メニュー項目が表示されますOpen PowerShell window here

または、次のことができます。

  • File-> Open Windows PowerShell

そしてボーナスのために...

File-> を右クリックするとOpen Windows PowerShell、次のことができますAdd to Quick Access Toolbar

ここに画像の説明を入力してください

ここに便利なアイコンがあります:

ここに画像の説明を入力してください

そして今、あなたはそのアイコンをクリックするだけです。:)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.