名前 | 形式 | 機能説明 | オプション | オペランド | 使用例 | 終了ステータス | 属性 | 関連項目
svcprop [-fqtv] [-C | -c | -s snapshot] [-p [name/]name]... {FMRI | pattern}...
svcprop -w [-fqtv] [-p [name/]name] {FMRI | pattern}
svcprop ユーティリティーは、サービス設定リポジトリにあるプロパティーの値を出力します。プロパティーの選択は、 -p オプションとオペランドで行います。
-C、-c、または -s オプションを使用しない場合は、svcprop は有効なプロパティーにアクセスします。サービスの有効なプロパティーは、サービスに直接付属するプロパティーです。サービスインスタンスの有効なプロパティーは、「実行中の」スナップショットの合成されたビューのプロパティーと、インスタンスに直接付属するプロパティーの合成されたビューにある非持続的なプロパティーグループ内のプロパティーとの集合です。プロパティーの合成についての説明は、smf(5) を参照してください。「実行中の」スナップショットが存在しない場合、代わりにインスタンスに直接付属するプロパティーが使用されます。
デフォルトでは、1 つのプロパティーを選択した場合には、それぞれの値が別の行に出力されます。空の ASCII 文字列は、二重引用符 (“”) で表現されます。ASCII 文字列の値に Bourne シェルのメタキャラクタ (「;」、「&」、「(」、「)」、「|」、「^」、「<」、「>」、改行、空白、タブ、バックスラッシュ、「"」、単一引用符、「`」) が含まれる場合は、そのキャラクタの前にバックスラッシュ (\) が付きます。
複数のプロパティーを選択した場合は、各プロパティーが 1 行で出力されます。各行はプロパティー指示子、プロパティータイプ、および値で構成され、それぞれの間は空白文字で区切られます。値は、前述の説明のとおりに出力されます。デフォルトでは、FMRI オペランドを 1 つだけ指定した場合のプロパティー指示子は、プロパティーグループ名、スラッシュ (/)、プロパティー名という構成になります。複数の FMRI オペランドを指定した場合のプロパティー指示子は、そのプロパティーの正規の FMRI になります。
エラーメッセージが標準エラーストリームに出力されます。
次のオプションを指定できます。
直接付属するプロパティーを合成しないで使用します。
サービスインスタンスの場合、直接付属するプロパティーの合成されたビューを使用します。
完全な FMRI を指示子として、複数プロパティー出力形式を選択します。
オペランドで指定されたそれぞれのサービスまたはサービスインスタンスについて、name プロパティーグループ内のすべてのプロパティーを選択します。オペランドで指定されたプロパティーグループについては、name プロパティーを選択します。
オペランドによって指定されたそれぞれのサービスまたはサービスインスタンスについて、プロパティーグループ pg 内のプロパティー prop を選択します。
非出力。出力を生成しません。
サービスインスタンスについて、name スナップショットの合成されたビューを使用します。
複数のプロパティーを出力する形式を選択します。
冗長。オプション -q が使用されている場合でも、存在しないプロパティーに関するエラーメッセージを出力します。
指定されたプロパティーグループ、または指定されたプロパティーを含むプロパティーグループが変更されるまで待機してから、出力します。
このオプションは、1 つのエンティティーが指定されている場合にだけ有効になります。複数のオペランドが指定されている場合、または 1 つのオペランドが複数のインスタンスに一致する場合は、エラーメッセージが出力され、処理は行われません。-C オプションの意味を含んでいます。
次のオペランドを指定できます。
サービスの FMRI、サービスインスタンス、プロパティーグループ、またはプロパティー。
インスタンス名を指定するか、サービス名の連続する部分を指定することにより、インスタンスおよびサービスを省略形にすることができます。プロパティーおよびプロパティーグループの場合は、完全な FMRI を指定する必要があります。たとえば、次のような FMRI を仮定します。
svc:/network/smtp:sendmail |
次に示すのは有効な省略形です。
sendmail :sendmail smtp smtp:sendmail network/smtp |
次に示すのは無効な省略形です。
mail network network/smt |
FMRI の省略形は不安定なので、スクリプトやその他の長期に渡って使用するツールに使用するべきではありません。省略形が複数のインスタンスとマッチする場合、svcprop は各インスタンス上で動作します。
リポジトリ内のサービスおよびサービスインスタンスの FMRI に対して一致した glob パターン。fnmatch(5) を参照してください。パターンが複数のサービスまたはインスタンスとマッチする場合、svcprop は各サービスまたはインスタンス上で動作します。
次の例は、サービス system/cron のインスタンス default のリスタータプロパティーグループ内にある、状態プロパティーの値を表示します。
example% svcprop -p restarter/state system/cron:default online |
サービスが有効かどうかは、その -general/enabled プロパティーによって決定されます。このプロパティーはすぐに影響するため、-c オプションを使用する必要があります。
example% svcprop -c -p general/enabled system/cron:default true |
Solaris のデフォルトのインストールでは、次の例は network/ntp サービスのそれぞれのインスタンスの general プロパティーグループ内にある、すべてのプロパティーを表示します。
example% svcprop -p general ntp general/package astring SUNWntpr general/enabled boolean true general/entity_stability astring Unstable general/single_instance boolean true |
次の例では、identity サービスのすべてのインスタンスの general/enabled プロパティーが存在することをテストします。
example% svcprop -q -p general/enabled identity: example% echo $? 0 |
次の例では、sendmail インスタンスの状態が変更されるのを待機します。
example% svcprop -w -p restarter/state sendmail |
次の例は、スクリプトの boolean プロパティーの値を取得します。
set -- `svcprop -c -t -p general/enabled service` code=$? if [ $code -ne 0 ]; then echo "svcprop failed with exit code $code" return 1 fi if [ $2 != boolean ]; then echo "general/enabled has unexpected type $2" return 2 fi if [ $# -ne 3 ]; then echo "general/enabled has wrong number of values" return 3 fi value=$3 ... |
example% cat getval #!/bin/sh svcprop -p $1 $2 | ( read value v2 if [ -n "$v2" ]; then echo "Multiple values!"; exit; fi echo $value ) |
次の属性についての詳細は、マニュアルページの attributes(5) を参照してください。
属性タイプ |
属性値 |
---|---|
使用条件 |
SUNWcsu |