Solaris ネーミングの管理

属性検索をカスタマイズする

検索パターンにおいて、フィルタ表現のうち以下のすべてを使用することもできます。

表 27-2 fnsearch フィルタ表現の演算子

フィルタ表現演算子 

シンボル、あるいは形式 

論理演算子 

orandnot

グルーピングのための丸括弧 

( )

関係演算子:ある属性を入力した値と比較する 

== 少なくとも 1 つの属性値が、入力した値に等しい場合、True (真) != 入力した値に等しい属性値がまったくない場合、True (真) < 少なくとも 1 つの属性値が、入力した値より小さい場合、True (真) <= 少なくとも 1 つの属性値が、入力した値よりも小さいか等しい場合、True (真) >少なくとも 1 つの属性値が、入力した値よりも大きい場合、True (真) >= 少なくとも 1 つの属性値が、入力した値よりも大きいか、等しい場合、True (真) ‾= 少なくとも 1 つの属性値が、いくつかのコンテキスト特有のおおまかな一致条件に照らして、入力した値に一致している場合、True (真)。この条件は厳密な一致を含む必要がある

例 

% fnsearch name "not (make == 'olds' and year == 1983)"

置換トークン: 

シェルスクリプトを書くときに役に立ち、-O および -U オプションを指定すると、OSI OID および DCE UUID を使用できる

%a は、属性に置き換えられる

%s は、文字列に置き換えられる

%i は、識別子に置き換えられる

%v は、属性値に置きかえられる (現在は、fn_attr_syntax_ascii しかサポートされていない)

例: 

以下の 3 つの例はどれも同じ 

% fnsearch name "color == 'red'"

% fnsearch name "%a == 'red'" color

% fnsearch name "%a == %s" color red

ワイルドカード文字列 

*, *string, string*, str*ing, %s*

拡張演算子 

'name'(ワイルドカードを使った文字列), 'reftype'(識別子), 'addrtype' (識別子)

例: 

名前が "Bill" で始まり、IQ 属性が 80 以上のオブジェクトを検索する 

% fnsearch name "'name'('bill'*) and IQ > 80"

検索パターン作成の詳細は、fnsearch(1) マニュアルページを参照してください。