コマンド間に "&"演算子があることは、コマンドが同時に実行されることを意味します。ただし、「command1 & command 2 &
」には「&」とは何ですか?"command1&command2&" vs "command1&command2"の違いはありますか?
答えて
ps1%> command1 & command2
この例では、command1はバックグラウンドから実行され、command2はフォアグラウンドから実行されます。コマンド2が終了するまでコマンドプロンプトを表示しません。この第二の例では
ps1%> command1 & command2 &
の両方が実行されている一方で、背景からCommand1とcommand2の実行の両方が、すぐに、あなたにコマンドプロンプトを得ました。それをテストして感じること
、あなたがこれを行うことができます:「睡眠4」コマンドがフォアグラウンドで実行されている間、この例では
ps1%> sleep 10 & sleep 4
[1] 8134
、あなたは、バックグラウンドコマンドのPID(プロセスID)が表示されます。
ps1%> sleep 10 & sleep 4 &
[1] 8139
[2] 8140
この2番目の例では、2つがバックグラウンドで実行されていることを示し、すぐにプロンプトに戻ります。
&
はバイナリ演算子(2つのコマンドの間)ではなく、単一の後置演算子です。つまり、コマンドの後に来て、指定されたコマンドをバックグラウンドで実行するようにシェルに指示します。 &
が2つのコマンドの間にある場合、通常の;
セパレータを省略することができます。すなわち、foo&; bar
をfoo & bar
と記述することができます。このようにすると、&
はバイナリ演算子のように見えます。
したがって、command1 & command2
は実際にはcommand1& ; command2
に相当し、「command1をバックグラウンドで実行し、command2を実行してcommand2を完了するのを待つ」という意味です。 command1 & command2 &
はcommand1& ; command2&
に相当し、「command1とcommand2の両方をバックグラウンドで実行し、直ちにスクリプトの実行を再開する(対話型の場合はプロンプトに戻る)」という意味です。
少なくとも1つのコマンドがバックグラウンドにあるため、2つのコマンドは実際にはどちらの場合も「並列」で実行されます。
- 1. Command2が実行された後、command1のCanExecuteを通知します。
- 2. bash「command1 ||エコーが失敗しました」同じファイルに書き込む
- 3. cmd1をcmdで実行した場合にのみcommand2を実行するshell
- 4. xの差| yとy <(x)をbashで?
- 5. PHP:if(!$ val)VS if(空($ val))。違いはありますか?
- 6. Guava:Iterables.filter VS Collections2.filter、大きな違いはありますか?
- 7. System vs ShellExecute - 違いはありますか?
- 8. webpack " - watch" vs "--hot":どういう違いがありますか?
- 9. オートファックとオープンジェネリック
- 10. まだアンドロイドの間に違いはありますか?src vs app:srcCompat?
- 11. 複数のpowershellコマンドを実行する
- 12. テンソルフローのアクティベーション関数に違いはありますか? tf.nn.tanh vs tf.tanh
- 13. Java Unicodeの問題(私だと思います)
- 14. 最初に閉じる必要があります。このコマンドに関連付けられているオープンのDataReaderが既にあり
- 15. LISPでvs let *を使うと効率に違いはありますか?
- 16. Apache RewriteRule:最高のパフォーマンスを持つもの:^(。+)vs(。*)と^。* $ vs。* $?違いはありますか?
- 17. バッチファイル
- 18. Python argparse親からの助けを借りて
- 19. シェルコマンドの最後に "/ dev/null"とは何かを意味します
- 20. commons-execを使用した一連のコマンド
- 21. NSDataからNSStringに正しく変換するには?
- 22. これはジェネリックの使用に違いがありますか?
- 23. ヒープバッファのオーバーフローがC
- 24. システム/ exec/openの$ Config {perlpath}を使っても安全ですか?
- 25. AddTransient:違いはありますか?
- 26. $ @と "$ @"に違いはありますか?
- 27. シェルスクリプトを実行すると、ジェンキンスさんはジェンキンス
- 28. 接続プロパティが正しく初期化されていません
- 29. Java LZO vs. Deflate vs. Gzipのベンチマークはありますか?
- 30. シェル:スクリプトが別のユーザーとして
Jay、どちらのコマンドラインが最初に表示され、どちらが第2であるかを表示してください。 – osgx