質問: 'cmd'で 'start'コマンドを使用してコマンドライン引数でプログラムを起動する方法 windows 7のコマンドラインでstartコマンドを使用してバックグラウンドでプログラム(仮想マシン)を起動する必要があります。通常は次のようにします。start /b cmd yourprogram しかし、私はいくつかの引数を渡す必要があります、そして私がそうするときは(デバッグ情報を見るために/bフラグなしで):start c:\users\user>start "c:\program files\oracle\virtualbox\vboxheadless.exe" -startvm "debian604 64" 私はこのエラーメッセージを得ます: windowsは '-startvm'を見つけることができません。名前を正しく入力したことを確認してから、やり直してください。 一方、最初のstartを指定せずに現在のコマンドラインウィンドウで実行すると、仮想マシンは正常に動作しますが、フォアグラウンドで動作します。解決策はありますか?
回答: 実際に受け入れられた答えはまだ解決策ではありません。コマンドが実行されたcmdウィンドウを閉じると、実行中の仮想マシンを含むvboxheadlessプロセスが強制終了されます。以下の方法を使用すると、 powershell が独立したプロセスを実行します。cmdで、次のコマンドを実行します。cd "c:\program files\oracle\virtualbox" vboxmanage list vms これは次のようになります。"webserver lap" {8748b594-7e2d-4d8d-8785-999940766754} それではuuidを取得して次のコマンドを実行してください(まだcmdにあります):powershell start-process 'c:\program files\oracle\virtualbox\vboxheadless' '-s 8748b594-7e2d-4d8d-8785-999940766754' -windowstyle hidden この記事の著者に感謝します。