回答:
&&
またはでコマンドを区切ることができます;
。
&&
前のコマンドがステータス0(成功)で終了した場合にのみ、次のコマンドを実行します。
command1 && command2 && command3
;
前のコマンドがゼロ以外のステータスで終了した場合でも、すべてのコマンドを実行します。
command1; command2; command3
必要に応じてこれらのセパレータを組み合わせることができます。
command1 && command2
のCommand1が成功した場合にのみcommand2の実行されます。
sudo apt upgrade
とsudo systemctl reboot
、あなたは二回「sudoを」を追加する必要があります、またはそれは、2番目のコマンドのためにsudoを「覚えている」のでしょうか?
1つのリクエストで各コマンドを独自の行に入力する場合は、次の方法を使用できます。
リクエスト(最初の行)をif :; then
(これが意味する場合:trueの場合はdo)で開始し、を押しEnterます。プロンプトが変更され>
、何も実行されません。
コマンドを入力します。各コマンドの後に Enter
fi
(上記のif
条件の終了)でリクエストを終了し、を押しEnterます。これで、すべてのコマンドが指定された順序で実行されます。
例:
radu@Radu: ~ $ if :; then
> echo 'something'
> echo 'something else'
> echo 'List current directory contents:'
> ls
> echo 'Change current directory with root directory:'
> cd
> #finish
> fi
something
something else
List current directory contents:
Backups Desktop forma3d Public Untitled txt.txt~
bin Documente Music Templates Videos
configuration.php examples.desktop passwd~ tmp~
Downloads file~ Poze Ubuntu One
Change current directory with root directory:
radu@Radu: / $
if true; then
必要に応じて読みやすくすることができます。一見:
混乱しているかもしれません;
。
まず、{
独自の行に配置します。
次に、コマンドを挿入します。
次に、}
aを新しい行に入力してを押しEnterます。コマンドが実行されます。
例:
{
echo list
echo of
echo commands
echo to run at once
}
印刷されます(一度にすべて、一度にプロンプトなしで):
list
of
commands
to run at once
補足として、{ .. }
Bashコマンドのグループ化構文です。多くの場合、&&
or ||
( 'and'、および 'or')と組み合わせて使用すると便利です。
if :; then
すでに言及したものと同じですか?それとも、わずかに違いますか?
if :
nullコマンドでテストを実行し、常にtrueを返します。{ .. }
コマンドをグループ化するだけです。個人的{ .. }
に覚えやすいと思います。