Linuxで2つ以上の端末コマンドを一度に実行する方法
Linuxを使用している場合、ファイルを操作したり、ソフトウェアをインストールしたり、プログラムを起動したりするのにコマンドラインがどれほど役に立つかがわかります。しかし、一度に複数のコマンドを実行するとさらに効率的になります。.
コマンドラインで2つ以上のコマンドを組み合わせることは、「コマンドチェーン」とも呼ばれます。コマンドラインでコマンドを組み合わせることができるさまざまな方法を紹介します。.
オプション1:セミコロン(;)演算子
セミコロン(;)演算子を使用すると、前の各コマンドが成功したかどうかにかかわらず、複数のコマンドを連続して実行できます。たとえば、ターミナルウィンドウを開きます(UbuntuとLinux MintではCtrl + Alt + T)。次に、次の3つのコマンドをセミコロンで区切って1行に入力し、Enterキーを押します。現在のディレクトリの一覧が表示されます( ls
)現在どのディレクトリにいるかを調べます( pwd
)をクリックして、ログイン名を表示します( 私は誰
) 一斉に.
ls; pwd;私は誰
セミコロンとコマンドの間にスペースを入れる必要もありません。次のように3つのコマンドを入力できます。 ls; pwd; whoami
. ただし、スペースを使用すると、結合コマンドが読みやすくなります。これは、結合コマンドをシェルスクリプトに追加する場合に特に便利です。.
オプション2:論理AND演算子(&&)
最初のコマンドが成功した場合にのみ2番目のコマンドを実行したい場合は、2つのアンパーサンドである論理AND演算子でコマンドを区切ります( &&
)たとえば、MyFolderというディレクトリを作成し、それが正常に作成された場合はそのディレクトリに変更します。そのため、コマンドラインに次のように入力してEnterキーを押します。.
mkdir MyFolder && cd MyFolder
フォルダは正常に作成されたので、 cd
コマンドが実行され、新しいフォルダに移動しました.
ほとんどの場合、セミコロン演算子ではなく論理AND演算子を使用することをお勧めします。;
)これはあなたが悲惨なことをしないことを保証します。たとえば、あるディレクトリに移動してそのディレクトリ内のすべてのものを強制的に再帰的に削除するコマンドを実行したとします( cd / some_directory; rm -Rf *
ディレクトリの変更が行われなかった場合、システムを破壊することになりかねません。ディレクトリ内のすべてのファイルを無条件に一度に削除するコマンドを実行することをお勧めします。.
オプション3:論理和演算子(||)
場合によっては、最初のコマンドが実行した場合にのみ、2番目のコマンドを実行したいことがあります。 ではない 成功するこれを行うには、論理OR演算子、または2本の垂直バー( ||
)たとえば、MyFolderディレクトリが存在するかどうかを確認します( [-d〜/ MyFolder]
それ以外の場合は作成します。 mkdir〜/ MyFolder
)そのため、プロンプトに次のコマンドを入力してEnterキーを押します。.
[-d〜/ MyFolder] || mkdir〜/ MyFolder
最初の括弧の後、2番目の括弧の前、またはディレクトリが存在するかどうかを確認する最初のコマンドの前にスペースがないことを確認してください。.
この例では、MyFolderディレクトリは存在しないため、2番目のコマンドでディレクトリが作成されます。.
複数の演算子を組み合わせる
コマンドラインで複数の演算子を組み合わせることもできます。たとえば、まずファイルが存在するかどうかを確認します( [-f〜/ sample.txt]
)もしそうなら、私たちはスクリーンにそう言ってメッセージを出力します( 「ファイルが存在します。」とエコーします。
)そうでなければ、ファイルを作成します( 〜/ sample.txtをタッチ
)そのため、コマンドプロンプトに次のように入力してEnterキーを押します。.
[-f〜/ sample.txt] && echo“ファイルが存在します。” || 〜/ sample.txtをタッチ
この例では、ファイルは存在しなかったので作成されました.
これは、コマンドを組み合わせるために使用される各演算子の便利な要約です。
-
A; B
- Aの成功または失敗に関係なく、Aを実行してからBを実行します。 -
A && B
- Aが成功した場合のみBを実行 -
A || B
- Aが失敗した場合にのみBを実行
これらのコマンドの組み合わせ方法はすべて、LinuxとWindows 10の両方のシェルスクリプトでも使用できます。.
Linuxのコマンドラインで「cd」を使用したときにスペルやタイプミスを自動的に修正して、コマンドを組み合わせたときの大きな影響を回避することもできます。.