回答:
&&またはでコマンドを区切ることができます;。
&& 前のコマンドがステータス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を返します。{ .. }コマンドをグループ化するだけです。個人的{ .. }に覚えやすいと思います。