移動先 先頭, 前, 次, 末尾 セクション, 目次.
- Amazing
awk
Assembler
-
トロント大学(University of Toronto)のHenry Spencer が作成した全て
awk
で記述されている 移植可能なアセンブラ(retargetable assembler)。様々
な8ビットマイクロコンピュータのためのマシン記述を含み、数千行ある。別のプ
ログラミング言語で記述したほうがよいプログラムのよい実例である。
- Amazingly Workable Formatter (
awf
)
-
トロント大学(University of Toronto)のHenry Spencerが作成した
フォーマッターで、
awk
とsh
によって作られており、
`nroff -ms'フォーマットコマンド や
`nroff -man'フォーマットコマンドの大きなサブセットを受け付ける。
- ANSI
-
American National Standards Instituteの略。この組織は多くの標準を制定し、
C言語やC++に関する標準も制定している。
awk
言語
-
awk
プログラムを記述するのに用いられるプログラミング言語。
awk
スクリプト
-
awk
プログラムの別名。
awk
プログラム
-
awk
プログラムは、ルールとして知られるパターンとアクションの集合の並
びからなる。プログラムに対して入力レコードが与えられる度に、プログラム中の
ルールは入力レコードに対して適用される。 awk
プログラムは関数定義を
持つ場合もある。
- Bash
-
GNUによる標準シェル(Bourne-Again shell)。"Bourne Shell"を参照のこと。
- BBS
-
See "Bulletin Board System."
- Bourne Shell
-
Unixやそれに似たシステムでの標準シェル (`/bin/sh') 。オリジナルは
Steven R. Bourneによって作成され、多くのシェル(Bash,
ksh
,
pdksh
,zsh
) がBourneシェルに対する上位互換のシェルとして
存在する。
- Bulletin Board System
-
ユーザーがログインし、
システムの他のユーザーのためのメッセージを置いたり、読んだり
することができる、掲示板上の紙のようなコンピューターシステム。
- C
-
ほとんどのGNUソフトウェアを記述するのに使われているシステムプログラム言語。
プログラミング言語
awk
はCに似た文法を持っているので、この
マニュアルでは awk
とCの類似点を適当なところで指摘する。
- CHEM
-
pic
の為のプリプロセッサで、ある分子の記述を読み込み、その分子の図形
を描画するためのpic
の入力コードを生成する。これは Brian Kernighanと
Jon Bentleyによって作成され、netlib@research.bell-labs.com
から入手できる。
- Dark Corner
-
ほとんど明確にされていなかった(あるいはまだされていない)
期待しない動作や、説明されていない動作などの言語の領域。
このマニュアルではそのような部分は"(d.c.)" という目印がつい
ていて、"dark corner"で索引から探し出せる。
- Format
-
書式指定文字列は
printf
文の出力を制御するのに使用する。
例えば、数値を文字列に変換するデータ変換は、組み込み変数の
CONVFMT
中の書式文字列によって制御されている。
セクション 書式制御文字を参照.
- FSF
-
"Free Software Foundation"を参照。
- Free Software Foundation
-
自由に配布可能なソフトウェアの作成と配布を目的とする非営利団体。
Emacsというエディターの原作者であるRichard M. Stallmanによって
設立された。GNU Emacsは今日最も広く使われているEmacsである。
gawk
-
GNUにより作成された
awk
。
- General Public License
-
gawk
とそのソースコードを配布するための条件が記述されている
ドキュメント。(セクション GNU GENERAL PUBLIC LICENSEを参照)
- GNU 一般公有使用許諾書
-
"General Public License"を参照。
- GNU
-
"GNU's not Unix"。現在進行中のFree Software Foundationによる
プロジェクトであり、完全に自由に配布可能なPOSIX準拠の環境の
作成をめざしているものである。
- GPL
-
See "General Public License."
- I/O
-
"Input/Output" の略。実行中のプログラムからデータを出力したり、
プログラムにデータを入力したりする動作。
- キャラクタセット(Character Set)
-
特定の国や地域で使われるキャラクタ(文字、数字、句読点など)をコンピュータシ
ステムで使用するために表した数値コードの集合。今日、最も広く使われているキ
ャラクタセットはASCII (American Standard Code for Information Interchange)
である。多くのヨーロッパ諸国では、ISO-8859-1 (ISO Latin-1)として知られる
ASCIIを拡張したものを使用している。
- Number
-
数としての値を持つデータオブジェクト。
gawk
の実装では
数を表すのに倍精度の浮動小数点が使用されている。
非常に古いawk
の実装では、単精度のものが使われている
- POSIX
-
IEEEが策定を行っている可搬性のあるオペレーティングシステムインターフェース
の標準規格の名称。"IX"はこれらの標準がUNIXを継承していることを
表している。
awk
ユーザーに深く関りがあるのはIEEE Standard for
Information Technology, Standard 1003.2-1992, Portable Operating System
Interface (POSIX) Part 2: Shell and Utilities.である。これは非公式にはし
ばしば"P1003.2"と表される。
- Private
-
ライブラリ関数によって排他的に使用され、
awk
プログラムの主部分では使われないような
変数や関数。このような変数や関数の名前付けには特別の注意を
払う必要がある。
セクション Naming Library Function Global Variablesを参照.
- Range (of input lines)
-
入力ファイルからの連続した行の並び。パターンは、
awk
に対する
入力行の範囲を処理のために特定することができる。
セクション Pattern Elementsを参照.
sed
-
"ストリームエディタ"を参照のこと。
- Unix
-
1970年代の始めにAT&Tのベル研究所でオリジナルが開発されたコンピュータオペレ
ーティングシステム。まず初めに世界中の大学でポピュラーになり、ついでソフト
ウェア開発システムやネットワークサーバーシステムとして商業環境に移行した。
多くの商用バージョンのUnixが存在し、同様に幾つかの、ソースコードが自由に入
手できる類似のシステム(Linux、NetBSD、FreeBSDなど)がある。
- アクション(Action)
-
あるルールに適用する
awk
言語の文の並び。ルールのパターンが入力レコー
ドと一致したならば、awk
はそのルールのアクションを実行する。アクショ
ンは常にカーリーブレースで囲まれる。
セクション Overview of Actionsを参照.
- 右辺値(Rvalue)
-
代入演算子の右側に置くことのできる値。
awk
ではすべての式が値を持っており、これらの値は右辺値である。
- エスケープシーケンス(Escape Sequences)
-
改行を`\n'としたり、ASCIIコードでのエスケープキャラクタ(ESC)を
`\033'とするような、直接印字できないキャラクタを記述するのに使われる
特別なキャラクタ並び。 セクション エスケープシーケンスを参照.
- 環境(Environment)
-
name
=
valのような形式をしている各プログラムから参照することの
できる文字列の集合。ユーザーは一般的に様々なプログラムに情報を与えるために、
環境に値を設定する。環境変数の典型的な例はHOME
やPATH
である。
- 関数(Function)
-
よく使われる処理やプログラムの明確なタスクの特殊なグループ。
awk
は多くの組み込み関数を持ち、またユーザーは任意に関数を
定義できる
セクション 組み込み関数を参照. および
セクション ユーザー定義関数を参照.
- キーワード(Keyword)
-
awk
言語では、キーワードは重要な意味を持つ単語である。
キーワードはあらかじめ予約されており、変数名として使うことはできない。
gawk
でのキーワードは以下の通り。
BEGIN
,
END
,
if
,
else
,
while
,
do...while
,
for
,
for...in
,
break
,
continue
,
delete
,
next
,
nextfile
,
function
,
func
,
exit
.
- 空白(Whitespace)
-
入力レコード、もしくは文字列の中にあるスペースキャラクタ、タブキャラクタ
もしくは改行の並び。
- 組み込み関数(Built-in Function)
-
awk
言語は数値演算、タイムスタンプ関係、文字列操作などの組み込み関数
を持っている。例えばある数値の平方根を計算するsqrt
やある文字列から
部分文字列を取り出すsqrt
がある。 セクション 組み込み関数を参照.
- 組み込み変数(Built-in Variable)
-
ARGC
, ARGIND
, ARGV
, CONVFMT
, ENVIRON
,
ERRNO
, FIELDWIDTHS
, FILENAME
, FNR
, FS
,
IGNORECASE
, NF
, NR
, OFMT
, OFS
, ORS
,
RLENGTH
, RSTART
, RS
, RT
, SUBSEP
。
これらは特別な役目をする変数である。これらの変数のうち一部のものは
変更すると、 awk
の動作する環境に影響を及ぼす。
セクション 組み込み変数を参照.
- Short-Circuit
-
awk
の論理演算子である`&&'と`||'の性質。
これらの演算子の左側を評価するだけで式全体の値を
決定できる場合、演算子の右側の部分にある部分式は評価されない。
(セクション Boolean Expressionsを参照).
- 空文字列(Null String)
-
何もキャラクタがない文字列。
awk
プログラムでは連続して
二重引用符を置くことにより表す。これは入力データ中にフィールドセパレータ
が連続して存在しているような場合に見掛ける。
- カーリーブレース(Curly Braces)
-
`{'と`}'。カーリーブレースは
awk
プログラム中で、
アクションや、複文、関数本体を区切るのに使用される。
- 固定正規表現
-
"正規表現定数"の項を参照。
- 再帰(Recursion)
-
直接、間接を問わず、関数の中で自分自身を関数呼び出しすること。もしこの説明
で解らなければ"再帰"の項目を参照すること。
- 左辺値(Lvalue)
-
代入演算子の左辺に置くことのできる式。大部分の言語では、
左辺値は変数か、配列の要素が持つ。
awk
では
指定されたフィールドもまた左辺値を持つ。
- 十六進(Hexadecimal)
-
0
から9
とA
からF
(`A'は10、
`B'は11を表し、`F'は15を表す)を数字として使う
16を基数とする記法。十六進数はC言語では`0x'を先頭に
つけることで明示する。したがって,0x12
は18(16*1+2)である。
- 条件演算子(Conditional Expression)
-
三項演算子`?:'を使用した
expr1 ? expr2 : expr3
のような式。 expr1 を評価し、その結果が真であれば expr2 を評価し
た値が式全体の値となり、結果が偽であれば expr3 を評価した値が全体の値
となる。 expr2とexpr3のどちらかのみが評価される。
セクション Conditional Expressionsを参照.
- ストリームエディタ(Stream Editor)
-
入力ストリームからレコードを読み取り、一度に一つ以上の処理を行うプログラム。
これはなにかの操作を始める前に入力ファイルを完全に読み込むバッチプログラム
や、ユーザーからの入力を要求する対話的プログラムとは対象的である。
- 正規表現(Regexp, Regular Expression)
-
正規表現は、文字列の集合を意味するパターンであり、無限集合である。例えば
`R.*xp'という正規表現は、 `R'で始まり `xp'で終わる文字列全て
にマッチする。
awk
では、正規表現はパターンや条件式に使われている。
正規表現はエスケープシーケンスを含むこともできる。
セクション 正規表現を参照.
- 正規表現定数(Regular Expression Constant)
-
正規表現定数とは
/foo/
のように、スラッシュで囲まれた
正規表現である。この正規表現はawk
プログラムを記述するときに
選択され、実行時に変更することはできない。
セクション 正規表現の使い方を参照.
- 整数(Integer)
-
小数点以下の部分を持っていない数。
- 代入(Assignment)
-
ある変数やデータオブジェクトの値を変更する
awk
の式。
代入できるオブジェクトは左辺値(lvalue)と呼ばれる。
lvalue. セクション 代入式を参照.
- タブ(Tab)
-
キーボードのTABキーを押すことにより生成されるキャラクタ。
通常は、最大8個のスペースに展開されて出力される。
- 単精度(Single Precision)
-
小数部を持つことのできる数の内部表現方法。
単精度の数値は倍精度のものよりも少ない桁しか保持できないが、
その演算ではCPU時間の消費がすくない。単精度は一部の非常に古い
awk
で数値を格納するために用いられていた。これはCでのfloat
に
あたる。
- データオブジェクト(Data Objects)
-
数値かキャラクタの並び。数値は必要に応じて文字列に変換される。
逆の場合も同様である。
セクション Conversion of Strings and Numbersを参照.
- 動的正規表現(Dynamic Regular Expression)
-
動的正規表現は通常の式と同じように記述された正規表現である。
"foo"
のような 文字列定数であっても良いが、
その値は変更することが可能である。
セクション 動的正規表現を使うを参照.
- 特殊ファイル(Special File)
-
オペレーティングシステムの元で直接扱われる名前ではなく、
gawk
によって内部的に解釈される名前を持つファイル。
たとえば、`/dev/stderr'がそうである。
セクション Special File Names in gawk
を参照.
- 入力レコード(Input Record)
-
セクション 入力をレコードへと分割をするやりかたを参照.
awk
が読み取ったデータの一つの塊。通常は
awk
の入力レコードはテキスト一行からなる。
- 倍精度(Double Precision)
-
小数点以下の部分を持つことのできる数の内部表現。倍精度実数は単精度実数より
も多くの桁数の数値を保持することができるが、その演算は(単精度を使ったとき
よりも)高くつく。倍精度実数は
awk
が数値を格納するときに使用している。
倍精度はまた、Cの型のdouble
にあたる。
- パターン(Pattern)
-
パターンは(そのパターンが属する)ルールが入力レコードを
処理の対象にするかどうかを
awk
に通知する。
パターンはまた、入力をテストする際に使われる任意の条件式である。
条件が満足されたならば、パターンは入力レコードに対してマッチした
と言われる。典型的なパターンは、入力レコードとある正規表現との
比較であろう。セクション Pattern Elementsを参照.
- 八進(Octal)
-
0
から7
までの数字を使う8を基数とした記法。
八進数は、Cでは先頭に`0'をつけて八進数であることを明示する。
したがって、(八進数の)013
は(十進数の)11
(8*1+3)である。
- 比較式(Comparison Expression)
-
(a < b)
の様に、真または偽のどちらかの値をとる関係。比較式はif
文やwhile
文、またはand for
文、そして入力レコードの処理を選択す
るパターンに使われている。
セクション Variable Typing and Comparison Expressionsを参照.
- フィールド(Field)
-
awk
が入力レコードを読んだとき、入力レコードは空白を区切りとして分
割が行われる(もしくはFS
に設定することによって変更された区切りを示す
正規表現によって分割される)。分割された個々の固まりをフィールド、と呼ぶ。組
み込み変数の FIELDWIDTHS
に長さを代入することでフィールドの長さを固定
長とすることができる。
セクション フィールドの分割方法の指定を参照,
およびセクション 固定長データの読み込みを参照.
- 複合文(Compound Statement)
-
カーリーブレースで囲まれた文の並び。複合文はネストさせることもできる。
セクション アクション中の制御文を参照.
- 副作用(Side Effect)
-
副作用はある式がもつ作用に伴って作り出す値。
代入式、インクリメント式、デクリメント式、そして関数呼び出しが
副作用を持つ。
セクション 代入式を参照.
- 浮動小数点数(Floating Point Number)
-
数学用語ではしばしば"rational number"とされているもの。
これは単に小数点以下の部分を持つ数のことである。
"単精度"と"倍精度"を参照のこと。
- ブール式(Boolean Expression)
-
イギリスの数学者Booleから命名された。"論理式"を見よ。
- ブレース(Braces)
-
"カーリーブレース"を見よ。
- Space
-
キーボードのスペースバーを押すことにより生成されるキャラクタ。
- 文字列(String)
-
`I am a string'のような、キャラクタの並びからなるデータ。
awk
言語では文字列定数は二重引用符で括られ、
エスケープシーケンスを含めることもできる。
セクション エスケープシーケンスを参照.
- リダイレクト(Redirection)
-
標準入力ストリーム以外から入力を行ったり、標準出力ストリーム以外に出力を行
うこと。
`>'や`>>'、あるいは`|'といった演算子を使用して
print
文やprintf
文の出力をリダイレクトすることが出来る。また、
`<'演算子や `|'演算子を使用して getline
文で読み込む
入力をリダイレクトすることができる。
セクション Redirecting Output of print
and printf
を参照,
and セクション getline
を使った入力を参照.
- ルール(Rule)
-
awk
プログラムのsegment。一つの入力レコードに対してどのように処理する
かが記述されている。一つのルールは、一つのpatternと一つのaction
から構成される。 awk
は入力レコードを読み込むと、各ルールに対して、
入力されたレコードがルールの持つパターンを満足したときに、そのルールのアク
ション部を実行する。ということを繰り返す。そうでなければ、ルールは入力レコー
ドに対して何も行わない。
- 連接(Concatenation)
-
あるの文字列の後ろにもう一つの文字列を連結して、二つの文字列を一つにまとめ
ること。たとえば、 `foo' という文字列に `bar'という文字列を連結す
ると `foobar'という文字列になる。
セクション String Concatenationを参照.
- 論理式(Logical Expression)
-
awk
での論理演算子、`&&', `||', `!' を使った式。
その数学的論理を確立した数学者にちなんで、しばしばブール式と呼ばれる。
移動先 先頭, 前, 次, 末尾 セクション, 目次.