回答:
はいあります。です&。
&&
コマンド1が完了すると、コマンド2が失敗しなければ、コマンド2を実行します。
&
関係なく実行されます。
少なくともMS-DOS 6.22では、キーCtrl+ Tを使用して一種の段落記号を取得していました。これは&、Phoshi が言及したように機能しました。ただし、doskey.exeを実行している場合にのみ機能します。
start
たとえば、次のようなコマンドを実行する場合、コマンドを開始する1行で複数のコマンドを実行する場合:
start "" netsh dump && pause
次に、2つのステップでそれを行う必要があります(この答えの最後に1行の解決策があります)。
まず、コマンドを一時バッチファイルに書き込みます(この場合、&
またはを使用できます&&
)。
echo netsh dump ^&^& pause ^&^& exit>foobar.cmd
-or-
echo netsh dump ^& pause ^& exit>foobar.cmd
コマンド
内で通常の文字として扱われるようにするには、各"&"s
(アンパサンド)を「エスケープ」する必要があることに注意してください。または、メモ帳などのテキストエディターで一時バッチファイルを作成できます。"^"
echo
次に、を使用start
してバッチファイルを開始します。
start "" foobar.cmd
-or-
start "" "temporary foobar.cmd"
注:二重引用符の空のペアは、開く
"Title"
コマンドウィンドウのタイトルバーに表示さstart
れるものです。この"Title"
引数は技術的にはオプションの引数ですが、実行するコマンドが二重引用符で囲まれている場合、start
実際には必須ですstart
。たとえば、2番目の例では:
start "" "temporary foobar.cmd"
このように二重引用符の空のペアを省略した場合:
start "temporary foobar.cmd"
その後、
start
新しいコマンドウィンドウを開き、使用する"temporary foobar.cmd"
新しいコマンド・ウィンドウとして"Title"
、そして何も新しいコマンド・ウィンドウで実行されません。)
あなたがしたい場合start
(後にバッチファイルが完了するのを待つためにpause
却下された)、前にstart
完了し、その後、あなたは追加する必要があります/w
への切り替えをstart
指示:
start "" /w foobar.cmd
これをすべて1行にまとめて、一時バッチファイル(foobar.cmd
)を削除(削除)することもできます。
echo netsh dump ^&^& pause ^&^& exit>foobar.cmd && start "" /w foobar.cmd && del foobar.cmd
-or-
echo netsh dump ^& pause ^& exit>foobar.cmd & start "" /w foobar.cmd & del foobar.cmd
一時バッチファイルを削除する場合はstart
、/w
スイッチで実行する必要があります。削除しないと、一時バッチファイルは実行前に削除される可能性があります。
ifで最初のコマンドをラップしたいが、それでも2番目のコマンドを実行したい場合は、次のようにifをcmd / cでラップする必要があります。
cmd / c abcが存在する場合。(rd / q abc)&エコーこんにちは
ifの前にcmd / cを付けない場合、コマンド全体がifの一部になります(これは望ましくない場合があります)。
(if exist abc. command₁) & command₂
start "" cmd /c "(command₁) & (command₂)"
合法であり、ウェブ上のどこにも答えられませんが、ほとんどのバッチステートメントをリンクする唯一の方法です。おめでとうございます。
if
が、まだ2番目のコマンドのように、その後に関係なく実行するために、あなたがラップしなければならないif
とcmd /c
同様」、と私はせずにそれを行う方法で応答しましたcmd /c
。では、なぜほとんどのバッチステートメントをリンクする唯一の方法はを使用していると言っているのcmd /c
ですか?そして、なぜあなたstart
はミックスに投入していますか?
「START」を使用すると、複数のコマンドが動作することが修正されました(Windows 10 Homeを実行しています)。例えば:
START chrome.exe "page.web.com" & timeout 20
&
ありませんstart
!
start
か?
&
および&&
Windowsでのみ作品cmd.exe
-あるではない DOS。