この記事では、Linux で複数のコマンドを同時に実行する方法について説明します。 コマンドの分離に関しては、すべての演算子に独自の利点があります。 このチュートリアルは、コマンドの実行方法とシェル スクリプトの作成方法を改善するのに少し役立ちます。
Linux オペレーティング システムは、システムを管理するためのシンプルなコマンド ライン インターフェイスを提供します。 ユーザーからのコマンドを受け入れてカーネルにルーティングする Bash、CSH、Zsh などのシェルがあります。 コマンドは、システムで何らかの機能を実行するために使用されます。 一度に複数のシェルを指定して、それらを次々に実行することもできます。
区切り演算子を使用して使用できる 3 つの異なるオプションがあります。 次のセクションでは、それらについて詳しく見ていきます。
オペレーター | 構文 | 説明 |
---|---|---|
セミコロン (;) | コマンド1; コマンド2 | 両方のコマンドを 1 つずつ実行します |
論理積 (&&) | コマンド 1 && コマンド 2 | command1 が成功した場合にのみ command2 を実行する |
論理和 (||) | コマンド1 || コマンド2 | commandn1 が失敗した場合にのみ command2 を実行する |
すべてのオプションについて詳しく説明しましょう。
セミコロン (;) の使用
セミコロン (;) コマンドを分離して、前のコマンドの終了ステータスに関係なく、後続のコマンドが実行されることを保証します。 このオプションを使用して、前のコマンドの完了後にコマンドが実行されるようにします。
構文:
command1; command2; commandN
例:
date; pwd; whoami
Sat Aug 6 01:56:05 UTC 2022
/home/rahul
rahul
2 番目のコマンドは権限エラーのために失敗しますが、3 番目のコマンドは次のコマンドで引き続き実行されます。
date; touch /root/a.txt; whoami
Sat Aug 6 01:59:31 UTC 2022
touch: cannot touch '/root/a.txt': Permission denied
rahul
論理 AND 演算子 (&&) の使用
前のコマンドが正常に実行されると、次のコマンドも実行されます。 論理的な と (&&) オペレーターは、前のコマンドの終了ステータスをチェックします。
ただし、前のコマンドが 非ゼロ 終了ステータス、実行はここで停止します。 その場合、後続のコマンドは実行されません
構文:
command1 && command2 && commandN
例:
mkdir ./backups && cd ./backups
最初のコマンドが何らかの理由で失敗した場合、最後のコマンドは実行されません。
mkdir /root/backups && cd /root/backups
mkdir: cannot create directory ‘/root/backups’: Permission denied
論理 OR 演算子 (||) の使用
論理的な または (||) condition は前のコマンドの終了ステータスをチェックし、前のコマンドが失敗した場合にのみ次のコマンドを実行します。
構文:
command1 || command2 || commandN
この構成をシェル スクリプトで使用して、ファイルまたはコマンドが使用可能かどうかを判断できます。 たとえば、バックアップ スクリプトでは、 /usr/bin/mysqldump
存在するかどうか、存在しない場合は、メッセージを出力するか、プロセスを終了できます。
[ -s /usr/bin/mysqldump ] || echo "command not found"
これを使用して、システムにないコマンドまたはファイルをテストします。 これは、ファイルが見つからない場合にファイルを作成する bash スクリプトに役立ちます。 必要なファイルが見つからない場合は、スクリプトの実行を停止することもできます。
[ -s /usr/bin/not_a_cmd ] || echo "command not found"
結論
この記事では、Linux で複数のコマンドを同時に実行する方法について説明します。 また、コマンドを互いに区切るために使用されるさまざまな演算子についても説明します。 各演算子はコマンドの実行方法に影響を与え、それぞれに独自の利点があります。 このチュートリアルは、コマンド実行またはシェル スクリプト作成のスキルを向上させることに関心のあるすべての人に役立つ情報を提供します。
The post Linux で一度に複数のコマンドを実行する – TecAdmin appeared first on Gamingsym Japan.