[解決済み] Bash関数の戻り値をテストする適切な方法は何ですか?
2023-06-24 19:12:49
質問
Bash関数の戻り値を もし ステートメントでテストしたい。
if [[ func arg ]] ; then …
でも、こんなエラーメッセージが出ます。
conditional binary operator expected.
正しい方法は何ですか?
次のようなものでしょうか?
if [[ $(func arg) ]] ; then ...
どのように解決するのですか?
結果ではなく、終了コードであった場合、単に
if func arg; then ...
関数が適切な終了コードを返すようにできない場合は、(
return N
を使って)適切な終了コードを返すことができず、文字列の結果を使わなければならない場合は
Alex Gitelmanの回答
.
$ help if
:
<ブロッククオート
if: if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else COMMANDS; ] fi
条件に応じてコマンドを実行する。
<ブロッククオート
は
if COMMANDS
のリストが実行されます。 その終了ステータスが0であれば
then COMMANDS
リストが実行される。 そうでない場合は、各
elif COMMANDS
リストが順番に実行されます。
が順番に実行され、その終了ステータスが0であれば、対応する
then COMMANDS
リストが実行され、ifコマンドは終了する。 そうでない場合は
は
else COMMANDS
のリストが存在すれば、それが実行されます。 構成全体の終了ステータスは
構成全体の終了ステータスは、最後に実行されたコマンドの終了ステータスとなります。
または、どの条件も真と判定されなかった場合のゼロです。
終了ステータス。 最後に実行されたコマンドのステータスを返します。
関連
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] Bashスクリプトのソースディレクトリをスクリプト自体から取得するにはどうすればよいですか?
-
[解決済み] callとapplyの違いは何ですか?
-
[解決済み] シェルで、「2>&1」はどういう意味ですか?
-
[解決済み] Bashスクリプトからプログラムが存在するかどうかを確認するにはどうすればよいですか?
-
[解決済み] Bashで文字列をデリミターで分割するには?
-
[解決済み] なぜ ++[[]][+[] +[+[]] は "10" という文字列を返すのでしょうか?
-
[解決済み] 好ましいBashのシェバングとは?
-
[解決済み] Bash関数から文字列値を返す方法
-
[解決済み】Bashスクリプトに渡された引数の数を確認する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] find を使ってサブディレクトリを除外する
-
[解決済み] bashで端末の最終行を削除して置換するには?
-
[解決済み] Bashでディレクトリではなく、ファイルだけをリストアップする方法は?
-
[解決済み] ログファイルやコンソールへの出力の書き出し
-
[解決済み] Bashのファイル拡張子は何ですか?
-
[解決済み] bashのifブロックの中でboolean変数を評価する方法は?重複
-
[解決済み] Bash。フォルダ構造を保持したまま再帰的に名前付きファイルをコピーする
-
[解決済み] スペースで区切られた引数の受け渡し (bash) スクリプト
-
[解決済み] here-documentで'unexpected end of file'エラーが発生する。
-
[解決済み] Bashで文字列の一文字目を削除する