TOP(サイトマップ) Solaris man マニュアル
(はじめに)
はじめに
Solarisって・・・
SunのセミナーとSDC
Solaris 10概要
資格(SCSA,SCNA)
Solarisフォーラム
管理人に連絡

(Solaris基本)

Solarisのインストール
システムの起動と停止
ファイルシステム
オートマウントとマウント
パッケージとパッチ
ユーザの追加と削除
ファイル権限(セキュリティ)
バックアップとリストア
CDE環境
プロセス管理/監視

(ネットワーク管理)

OSIを理解してみる
TCP/IPの設定
(TCP/IP入門)
DNSの設定
NISの設定
NFSの設定(WebNFS,CacheFS)
(NIS、NIS+、DNS違い)
DHCPの設定
1つのNICで複数IP設定

(IO関連)

インタフェース概要
SAFの管理
プリンタ管理概要
プリンタコマンド
SunSolve Online
SCSI情報(KEY,ASC,ASCQ)

(ソフトウェア関連)

Bash
Apache
Solstice DiskSuite
(SDS OSミラー回復)
Veritas VxVM

(OBPについて)

PROM(OBP)の概要
OBPでのキーボード操作
一般的なOBPコマンド
SolarisでOBPの設定
OBPに関するFAQ


(トラブル時の対応)

基本情報
エラーメッセージ
(主要メッセージ一覧)
性能関連コマンド
トレースコマンド
クラッシュダンプ
SunSolve Online

(その他)

小技集
UNIXコマンド
(manマニュアル)
システムチューニング
ネットワークチューニング
UltraSPARC T1について

(FAQ)

rootのPASSが不明
ハングアップかな?
ハードトラブル
OSが起動しない(b)
swap領域の拡張方法

(リンク)

Sun関連リンク
その他リンク
アバウトなJava入門
Perlメモ(逆引き用)
ユーザーコマンド                                           awk(1)

【名前】
     awk - パターン走査およびパターン処理の言語

【形式】
     /usr/bin/awk [-f progfile] [-F c] [ ' prog  ']  [parameters]
     [filename ...]

     /usr/xpg4/bin/awk  [-F ERE]  [-v assignment  ...]  'program'
     -f progfile ... [argument ...]

【機能説明】
     /usr/xpg4/bin/awk ユーティリティについては nawk(1) のマ ニュ
     アルページで説明しています。

     /usr/bin/awk ユーティリティは、filename で指定したファイルを
     走 査し、prog で指定したパターンのいずれかと一致する行を探し
     ます。prog は、シェルと区別できるように単一引用符 (') で囲み
     ます。prog で示される各パターンとともに、filename 内に一致す
     る行が見つかったときに実行されるアクション (動作) を記述する
     ことができます。一連のパターン-アクション文は prog  に直接書
     いても良く、-f progfile オプションで示されるファイル内に指定
     してもかまいません。ファイルは順番に読み込まれます。ファイル
     が指定されないときは、標準入力が使用されます。ファイル名 '-'
     は標準入力を意味します。

【オプション】
     次のオプションを使用できます。

     -f progfile     awk は progfile から読み込んだ一連のパターン
                     を使用します。



     -Fc             フィールドセパレータとして c を使用しま す。
                     下記の FS の説明を参照してください。



【使用法】
  [入力行]
     各行は、各パターン-アクション文のパターン部分と比較 さ れ ま
     す。 一致すると、関連するアクションが実行されます。var=value
     の形式の filename はファイル名ではなく変数の割り当てとみなさ
     れ、その場合には、そのファイルがオープンされるであろう時点で
     行われます。この方法によって割り当てられた変数 は  BEGIN  パ
     ターンのルール内では使用できず、以前に指定されたファイルがす
     べて読み込まれた後で割り当てられます。

     入力行は通常、空白で区切られたフィールドで構成されています (
     こ のデフォルト値は -Fc オプションまたは FS 組み込み変数を使
     用して変更できます。下記参照 ) 。デフォルトでは先行する空 白
     文字を無視し、空白文字またはタブ、あるいはその両方でフィール
     ドを区切るようになっています。なお、変数 FS に空白を含まない
     値が代入されていると、先行空白文字を無視しません。フィールド
     は $1 、$2 、 ... のように表され、$0 は全行を意味します。

  [パターン-アクション文]
     パターン-アクション文は次の形式をとります。


     pattern { action }


     パターンかアクションのどちらかを省略することができます。アク
     ショ ン が指定されていないときは、一致した行を印刷します。パ
     ターンが指定されていないときは、全行に対してアクションが実行
     さ れます。パターン-アクション文は復帰改行またはセミコロンで
     区切られます。

     パターンは、正規表現および関係式を任意の論理演算子 (!  、 ||
     、&& 、および括弧)  によって組み合わせたものです。パターンは
     任意のブール型の組み合わせです。関係式は次のいずれかです。


     expression relop expression
     expression matchop regular_expression



     ここで、relop とは C 言語の 6 つの関係演算子のうちのど れ か
     で、 matchop とは ~ (含む) または !~ (含まない) のいずれかを
     示します。expression とは、数値演算式、関係演算式、配列中 の
     変 数 (var in array)、またはこれらを論理演算で組み合わせたも
     のです。


     var in array



     egrep(1) と同様、正規表現はスラッシュで囲まれていなければ な
     りません。パターン内の独立した正規表現はその行すべてに適用さ
     れます。正規表現は関係式の中にも現われます。パターンは、コン
     マ で区切られた 2 つのパターンからなることもあります。この場
     合、関連するアクションは、最初のパターンが一致した行と 2  番
     目のパターンが一致した行の間にあるすべての行に対して実行され
     ます。

     BEGIN と END は特殊なパターンで、最初の行を読む前と最後の 行
     を 読んだ後に制御を確保するのに使用します。この 2 つの特殊パ
     ターンは他のパターンと組み合わせて使うことはできません。

  [組み込み変数]
     組み込み変数には次のものがあります。

     FILENAME        現入力ファイル名



     FS              入力フィールドセパレータの正規表現 (デフォル
                     トは空白文字とタブ)



     NF              現レコード中のフィールド数



     NR              現レコード番号



     OFMT            数値の出力形式 (デフォルトは %.6g)



     OFS             出力フィールドセパレータ (デフォルトは空白文
                     字)



     ORS             出力レコードセパレータ (デフォルトは復帰改行
                     文字)



     RS              入力レコードセパレータ (デフォルトは復帰改行
                     文字)



     アクションは一連の文です。使用できる文は次のうちのいずれかで
     す。


     if ( expression ) statement [ else statement ]
     while ( expression ) statement
     do statement while ( expression )
     for ( expression ; expression ; expression ) statement
     for ( var in array ) statement
     break
     continue
     { [ statement ] ... }
     expression      # 一般に variable = expression
     print [ expression-list ] [ >expression ]


     printf format [ , expression-list ] [ >expression ]
     next         # この行の残りのパターンをスキップする
     exit [expr]     # 残りの入力をスキップする。終了ステータスは expr



     上記におい て、 statement  は 文 を、 expression  は 式 を、
     expression-list  は 式 のリストを、variable は変数を、condi-
     tional は条件を、format は書式をそれぞれ表します。

     文は、セミコロン、復帰改行、右かっこのうちのいずれかで終了し
     ます。式のリストが空の場合は入力行全体を意味します。式は、文
     字列または数字と + 、- 、* 、/ 、% 、^ 、および連結 (空白 文
     字 で 示される) の各演算子で構成されます。C の演算子 ++ 、--
     、+= 、-= 、*= 、/= 、%= 、^= 、>, 、>= 、< 、<= 、==  、 !=
     、 ?:  も 式 の中に記述できます。 変数は、スカラー、配列要素
     (x[i] で表される) またはフィールドです。変数は NULL 値または
     0 で初期化されます。配列の添字は、必ずしも数字である必要はな
     く、文字列でもかまいません。これによって、ある種の連想記憶形
     式を使用できます。文字列定数は、二重引用符 ("") で囲みます。
     C のエスケープ文字はエスケープとして認識します。

     print 文はその引数を標準出力に出力します。>expression が指定
     されたときはファイルへ、 '|cmd' が指定されたときはパイプへ出
     力します。出力は、現在の出力フィールドセパレータで区切られた
     各 引数を持つ、出力レコードセパレータで終了します。printf 文
     は、その書式に従って式のリストの書式を定めます。 (printf(3C)
     参照)。

  [組み込み関数]
     演算関数は次の通りです。

     cos(x)          x をラジアン単位として x の余弦を返しま す。
                     (/usr/xpg4/bin/awk  のみ。nawk(1) のマニュア
                     ルページを参照)



     sin(x)          x をラジアン単位として x の正弦を返しま す。
                     (/usr/xpg4/bin/awk  のみ。nawk(1) のマニュア
                     ルページを参照)



     exp(x)          x の指数関数を返します。



     log(x)          x の自然対数を返します。



     sqrt(x)         x の平方根を返します。



     int(x)          引数を切り捨てて、整数にします。つまり x  が
                     0 よりも大きい場合は、0 に向かって切り捨てま
                     す。



     文字列関数は次の通りです。

     index(s, t)

         文字列 s の中で文字列 t が最初に出現する位置を返します。
         出現しなければ 0 を返します。



     int(s)

         整数値になるよう、s を切り捨てます。s が指定されていなけ
         れば、$0 が使われます。



     length(s)

         引数を文字列として解釈しその長さを返します。引数がない場
         合は行全体を返します。



     split(s, a, fs)

         文字列 s を a[1] 、a[2] 、... a[n] の配列要素に分割 し、
         値  n  を 返します。この分割は、正規表現 fs によって行わ
         れ、fs が指定されていない場合はフィールドセパレー タ  FS
         によって行われます。



     sprintf(fmt, expr, expr,...)

         fmt で指定した printf(3C) 形式に従って式の書式を定め、そ
         の結果得られた文字列を返します。



     substr(s, m, n)

         文字列 s 内の m 番目から始まる長さ n の部分文字列を返 し
         ます。



     出入力用の関数は次の通りです。

     getline         $0 に、現入力ファイルの次のレコードを設定 し
                     ま す。 getline  関数は正常終了時には 1 を、
                     ファイルの終わりに達すると 0 を、またエ ラー
                     発生時には -1 を返します。



  [大規模ファイルの動作]
     ファイルが 2 ギガバイト ( 2**31 バイト) 以上ある場合 の  awk
     の動作については、largefile(5) を参照してください。

【使用例】
     例 1: 72 文字以上の行の出力:

     length > 72

     例 2: 最初の 2 フィールドを逆順に出力:

     { print $2, $1 }

     例 3: 最初の 2 フィールドを逆順に出力 (入力フィールドをコ ン
     マまたは空白文字とタブ、あるいはそのすべてで区切る):

     BEGIN { FS = ",[ \t]*|[ \t]+" }
           { print $2, $1 }

     例 4: 最初のカラムを合計して、合計値と平均値の出力:

          { s += $1 }
     END  { print "sum is", s, " average is", s/NR }

     例 5: フィールドを逆順に出力:

     { for (i = NF; i > 0; --i) print $i }

     例 6: start/stop の間にあるすべての行の出力:

     /start/, /stop/

     例 7: 最初のフィールドが前行と異なるすべての行の出力:

     $1 != prev { print; prev = $1 }

     例 8: ページ番号付きでのファイルの出力 ( 5 ページから ):

       /Page/  { $2 = n++; }
                  { print }

     例 9: 5 ページから始まるページ番号でファイルを出力:

     このプログラムが prog のファイルに記録されている場合、以下の
     コマンドは 5 ページから始まるページ番号で input ファイルを出
     力します。

     awk f prog n=5 input

【環境】
     awk の実行に影響を与える環境変数 LC_CTYPE、LC_MESSAGES に つ
     いての詳細は、environ(5) を参照してください。

     LC_NUMERIC      数値入力の解釈、数値と文字列との変換、数値出
                     力のフォーマットに用いる、小数点文字を決定し
                     ます。awk プログラム (コマンド行引数で指定さ
                     れる代入も含む) の処理で認識される小数点文字
                     は、ロケールに関係なくピリオド (POSIX ロケー
                     ルの小数点文字) です。



【属性】
     次の属性については attributes(5) のマニュアルページを参照 し
     てください。

  [/usr/bin/awk]
     ____________________________________________________________
    |         属性タイプ          |            属性値           |
    |_____________________________|_____________________________|
    | 使用条件                    | SUNWesu                     |
    |_____________________________|_____________________________|
    | CSI                         | 対応済み                    |
    |_____________________________|_____________________________|

  [/usr/xpg4/bin/awk]
     ____________________________________________________________
    |         属性タイプ          |            属性値           |
    |_____________________________|_____________________________|
    | 使用条件                    | SUNWxcu4                    |
    |_____________________________|_____________________________|
    | CSI                         | 対応済み                    |
    |_____________________________|_____________________________|

【関連項目】
     egrep(1),  grep(1),  nawk(1),  sed(1),  printf(3C),   attri-
     butes(5), environ(5), largefile(5), XPG4(5)

【注意事項】

     入力行に空白が含まれる場合、出力時に保証されません。数値と文
     字の間の明示的な変換は行われません。式を数値として扱いたい場
     合は 0 を加え、文字として扱いたい場合は NULL  文字列 ("") を
     連結してください。