OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
締切り
済み

シェル変数??case "${action:?}" in どうゆうこと????

  • 困ってます
  • 質問No.118762
  • 閲覧数101
  • ありがとう数0
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 0% (0/2)

シェルについて質問ですが、ある本でcase "${action:?}" in というフレーズを見たのですが、":?"のところの意味がわからないのですが、どういういみでしょうか?
わからずもやもやしています。よろしくお願いします。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全2件)

  • 回答No.1
レベル14

ベストアンサー率 50% (1122/2211)

これは、以下のような構文になります。 ${シェル変数:?メッセージ} 例えば、以下のような処理の場合、 $ echo ${a_kuma:?"変数 a_kuma が設定されてない"} シェル変数 a_kuma が設定されていないと、?以降のメッセージを出力して シェルを抜けます。 メッセージを省略する(質問のケースですね)と、シェルが持っている デフォル ...続きを読む
これは、以下のような構文になります。

${シェル変数:?メッセージ}

例えば、以下のような処理の場合、

$ echo ${a_kuma:?"変数 a_kuma が設定されてない"}

シェル変数 a_kuma が設定されていないと、?以降のメッセージを出力して
シェルを抜けます。

メッセージを省略する(質問のケースですね)と、シェルが持っている
デフォルトのメッセージが使われます。

もし、シェル変数に何か設定されていれば、その内容に置換されます。

$ a_kuma=kumakumakuma
$ echo ${a_kuma:?"変数 a_kuma が設定されてない"}

だったら、kumakumakuma と表示されます。
補足コメント
mumin365

お礼率 0% (0/2)

>メッセージを省略する(質問のケースですね)と、シェルが持っている
>デフォルトのメッセージが使われます。
ということはわざわざ${a_kuma:?}とする必要がないということでしょうか?
${a_kuma}だけで良いということでしょうか?
投稿日時 - 2001-08-15 12:14:51


  • 回答No.2
レベル14

ベストアンサー率 50% (1122/2211)

> ということはわざわざ${a_kuma:?}とする必要がないということでしょうか? そこの行に達するまでに、シェル変数 a_kuma が設定されていることが 確実なのであれば、単に ${a_kuma} と書いているのと何ら変わりありません。 念のためのガードを入れておく、と考えて下さい。
> ということはわざわざ${a_kuma:?}とする必要がないということでしょうか?

そこの行に達するまでに、シェル変数 a_kuma が設定されていることが
確実なのであれば、単に ${a_kuma} と書いているのと何ら変わりありません。

念のためのガードを入れておく、と考えて下さい。
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ