13

set -e私はよくbashスクリプトを追加します。ただし、今回は、成功すると0ではなく意味のない数値を返すコマンドを呼び出す必要があります。このコマンドの戻り値のみを無視するようにbashに指示するにはどうすればよいですか。

コマンドを変更したり、標準に準拠するようにコードを変更したりすることはできません。

4

2 に答える 2

14

true常にゼロの終了コードを返します。だからあなたはすることができます

command-with-meaningless-return-value || true
于 2012-11-28T16:26:12.693 に答える
5

後での値を使用する必要がある場合は、次の$?ことができます。

# A test funtion to demonstrate different exit status values
$ exit_with(){ return $1; }

$ exit_with 0

$ echo $?
0

$ exit_with 4

$ echo $?
4

$ exit_with 4 || true

$ echo $?
0

# capture the exit status rather than clobber it
$ exit_with 4 || exit_status=$?

$ echo $?
0

$ echo $exit_status
4

この場合、$exit_statusの代わりにを使用して$?ください。私はまたはのようなことをする方法を見つけていませ?=$?declare ?=$?

于 2018-11-21T02:28:22.367 に答える