BATファイル:新しいcmdウィンドウを開き、そこでコマンドを実行します
Bat File Open New Cmd Window
解決:
それはあなたが尋ねた少し前だったので、あなたはすでにあなたの答えを見つけるかもしれません。しかし、私はrorをコーディングするときに同様のことをしようとしました。新しいcmdウィンドウで「railsserver」を実行したかったので、新しいcmdを開いてからパスを再度見つける必要はありません。
私が見つけたのは、次のようにKスイッチを使用することでした。
start cmd / k echo Hello、World!「cmd」がアプリケーションを新しいウィンドウで開き、「/ K」が「echoHello、World!」を実行する前に開始します。新しいcmdが起動した後。
/ Cスイッチを同様の目的で使用することもできます。
cmd / Cの一時停止を開始これにより、「一時停止」が実行されますが、コマンドが完了するとウィンドウが閉じます。この場合、ボタンを押した後。これは「railsserver」に役立つことがわかりました。その後、開発サーバーをシャットダウンするときに、後でウィンドウを閉じる必要はありません。
バッチファイルで以下を使用します。
start cmd.exe / k'more-batch-commands-here 'また
start cmd.exe / c'more-batch-commands-here ' / c文字列で指定されたコマンドを実行し、終了します
/ k文字列で指定されたコマンドを実行しますが、残ります
を使用してcmd.exeのドキュメントを参照してくださいcmd /?詳細については。
コマンド文字列の適切なフォーマットは、引数にスペースを含めると少し複雑になります。以下の例を参照してください。一部の例では、ネストされた二重引用符を使用していることに注意してください。
例:
プログラムを実行し、ファイル名パラメーターを渡します。
CMD / c write.exe c: docs sample.txt
プログラムを実行し、長いファイル名を渡します。
CMD / c write.exe'c: sample documents sample.txt '
プログラムパス内のスペース:
CMD / c '' c: Program Files Microsoft Office Office Winword.exe ''
プログラムパスのスペース+パラメータ:
CMD / c '' c: Program Files demo.cmd '' Parameter1 Param2
CMD / k '' c: batch files demo.cmd ''パラメータ1とスペース ''パラメータ2とスペース ''
demo1とdemo2を起動します。
CMD / c '' c: Program Files demo1.cmd '&' c: Program Files demo2.cmd ''
ソース: http://ss64.com/nt/cmd.html
これは簡単ではありません。
最善のアプローチは、「新しいウィンドウ」で実行するスクリプトの部分を別の.batファイルに入れることです。たとえば、これは実用的ではない可能性があります。スクリプトの残りの部分(変数など)から多くの状態が必要です。 1つのオプションは、必要な値(操作するdirなど)をバッチファイルに渡すことです。
cmd.exe stuff.bat%this_dir%を開始します送信する状態が大量にある場合は、実行時にバッチファイルを生成することを検討してください。
set foo = Hello、World set list_me =%userprofile%set tmpdir = c: windows temp set tmp =%tmpdir% tmp.foo del / q / f '%tmp%' echo.echo%foo%>> ' %tmp% 'echo.dir'%list_me% '>>>'%tmp'start cmd.exe '%tmp%' del / q / f '%tmp%'明らかに、これは些細な例です。