web-dev-qa-db-ja.com

管理者として特定のフォルダにあるコマンドプロンプトを開くにはどうすればいいですか?

私はcmd.exeへのショートカットを作成し、私が始めたいフォルダを指定しました。それから私はAdvancedに行き、チェックマークを付けました管理者として実行

ショートカットをダブルクリックすると、常にC:\Windows\System32で始まります。

何が足りないの?指定したフォルダからコマンドラインを起動する方法を教えてください。

shortcut properties

the Prompt, in System32

37
AngryHacker

ターゲットではcmd /k cd c:\crpを指定するべきです

33
barlop

その根拠を知りたい場合は、潜在的なセキュリティ上の脆弱性から保護するために、Start inで昇格時に明示的に無視されます (Windows自体の一部であるバイナリのみ)。

基本的な考え方は、作業ディレクトリにある潜在的に悪意のあるDLLが現在の管理者以外のユーザーによって制御されている可能性があり、その後高い権限でロードされる可能性があることです。これを防ぐために、UACは作業ディレクトリをリセットします。ショートカットの[開始]は標高が発生する前に設定されるため、標高中にリセットされます。理想的な世界では、この保護はすべての昇格に適用されますが、作業ディレクトリが保持されることを期待するサードパーティ製プログラムを壊すため、組み込みのWindowsバイナリにのみ適用されます。

他の答えはこれを迂回して、昇格したcmdにその作業ディレクトリを変更するように指示します 引数/kを介して.

45
Bob

エクスプローラーには、Windows 8のリボンの導入以来、 クイックアクセスツールバー(QAT) があります。File-> open CMD Prompt-> Open CMD Prompt as adminをクリックします。右クリックしてQATに固定することを選択します。

enter image description here

これで、好きなすべてのフォルダでこのアイコンをクリックすると、cmdがこのフォルダで開きます。

enter image description here

QATからcmdを管理者としてより速く実行するには、 ALT キーを押すと、QATのポジションの番号が表示されます。

enter image description here

数字を押すと、この位置のツールが起動します(私の場合、4はcmdをadminとして実行します)。

26
magicandre1981

バロップは正しいです。 [/k cd "\path\to\folder"]の後に[cmd.exe]を[ターゲット]フィールドに追加すると、結果として得られる[コマンドプロンプト]ウィンドウでcdコマンドが実行され、その後は必要に応じてプロンプトが表示されます。別のドライブに変更する必要がある場合は、単なるcdではなくcd /dが必要です。ネットワークドライブに変更する必要がある場合は、代わりにpushdを使用してください。ターゲットUNCパスがドライブとして自動的にマウントされ、変更されます。

/kcmdに切り替えることは、「このコマンドを実行してkプロンプトを開いたままにする」ことを意味します。 /kの後の部分はすべてリテラルコマンドとして扱われるので、エスケープする必要はありません。 &&を使用して複数のコマンドを実行できます。cd "\path\to\folder" && echo Hi!はそのディレクトリにプロンプ​​トを表示し、Hi!を先頭に表示します。

Promptを回避しない/kと同等のものは/cです( "execute thiscommand"の場合)。

8
Ben N

これは実際にはあなたが求めているものではありませんが、私があなたが正しいと理解するとき、これはあなたが回避しようとするものを達成するでしょう。特定のフォルダでshift + rightclickを試し、open command window hereを選択します。それがあなたの問題ではない場合には、ただ私に知らせてください、そして、私はこれを取り除きます。

そして(ボブのおかげで、これも知らないうちに)これを高くすることさえ可能です。

ボブのコメント からのソース。

[...]ここにいる間に、システムに接続されているすべてのドライブ文字の昇格されたプロンプトを開くために必要なキーを追加することもできます。これは、レジストリにエントリを追加することで簡単に実現できます。下のテキストをコピーしてテキストファイルに貼り付け、「admin.reg」のような名前を付けてダブルクリックします。

Windows Registry Editor Version 5.00    
[-HKEY_CLASSES_ROOT\Directory\Shell\runas]       
[HKEY_CLASSES_ROOT\Directory\Shell\runas]  @="Open command window here as Administrator"  "HasLUAShield"=""    
[HKEY_CLASSES_ROOT\Directory\Shell\runas\command]  @="cmd.exe /s /k pushd \"%V\""    
[-HKEY_CLASSES_ROOT\Directory\Background\Shell\runas]    
[HKEY_CLASSES_ROOT\Directory\Background\Shell\runas]  @="Open command window here as Administrator"  "HasLUAShield"="" 
[HKEY_CLASSES_ROOT\Directory\Background\Shell\runas\command]  @="cmd.exe /s /k pushd \"%V\""    
[-HKEY_CLASSES_ROOT\Drive\Shell\runas]    
[HKEY_CLASSES_ROOT\Drive\Shell\runas]  @="Open command window here as Administrator"  "HasLUAShield"=""    
[HKEY_CLASSES_ROOT\Drive\Shell\runas\command]  @="cmd.exe /s /k pushd \"%V\""

任意のフォルダを右クリックすると、両方のオプションが表示されます。

3
Zaibis

管理者としてコマンドプロンプトを開くと、 "C:\ Windows\System32"と表示されます。 "cd .."と入力するだけで、 "C:\ Windows"というディレクトリが1つ表示されます。 。もう一度「cd ..」を繰り返して、「cd Users/name/folder」に移動できる場所から「C:\」に移動します。

1
LordKiz

私のように、別のドライブで管理者としてcmdを開こうとしたときにこの問題に遭遇した人(私の場合は "E:")のために、cd E:/somedirなどをしようとしたときに問題を経験したかもしれません。これを実行しても、実際にはディレクトリが新しいドライブに変更されることはありません。

これがあなたの問題で、あなたが別のドライブの管理者としてcmdを使う必要があるなら、cmd構文は実際にはE:(またはどんなドライブ文字)でも、cdコマンドはありません。

だからあなたはちょうどすることができます:

  1. Windowsの検索> "cmd">右クリック> [管理者として実行]
  2. 単にE:と入力してください(または切り替えたいドライブ文字にコロンを続けてください)。
1
Broper

あなたのシステムドライブ(例:C:\ Windows\system32)とは異なるドライブ(例:D:\ something)から起動する必要がある場合は、 "Target"フィールドに次のように入力してください。

cmd /k "cd /d D:\<your directory here>"

ここで重要なのは、cdの前に/dオプションを追加することです。

1
youngrrrr