web-dev-qa-db-ja.com

実行する前に、コマンドラインで実行可能ファイルの作業ディレクトリを設定するにはどうすればよいですか。

Path環境変数によって場所が解決されるプログラムをコマンドラインで実行すると、プログラムの作業ディレクトリは通常、そのインストールディレクトリに設定されます。

このようなプログラムをコンソールウィンドウから実行し、その作業ディレクトリを現在のディレクトリまたは他の明示的なディレクトリに設定したいと考えています。プログラムを一時的に作業ディレクトリにコピーすることでこれを行うことができました-cmd.exeまたはpowershell.exe環境内でこれを達成する別の方法はありますか?

このタスクに似たWindows Shellは、ショートカットを作成し、それに応じて「開始」プロパティを設定することです。

38
Steve Guidi

作業ディレクトリを明示的に設定するには、PowerShellソリューションはStart-Processコマンドレットと-WorkingDirectoryパラメータ。

Start-Process -FilePath notepad.exe -WorkingDirectory c:\temp

エイリアスstart、位置パラメータ、および部分的なパラメータ名を使用すると、次のように記述できます。

start notepad.exe -wo c:\temp

CMDにはSTARTコマンドもあります。これには、/Dパラメータで作業ディレクトリを指定します。

START /D c:\temp notepad.exe
42
Rynant

以下が機能し、適切な置換を行い、.cmd拡張子を付けて保存します。

@echo off 
C:
chdir C:\desired\directory
C:\full\path\of\command.exe

このバッチファイルを%PATH%のディレクトリに配置すると、任意のcmd.exeインスタンスから呼び出すことができるはずです。

7
LawrenceC