|

( 88 × 31 )
Web-projectへのリンクの時には
このバナーを使ってね!
|
アクセスアップの小技
ダイナミックウェブサイトを目指す - レンタルCGI
& Perlリファレンス
CGIは、HTMLやJavaScriptと違い、『データを保存』することができるとても便利なシステムです。
身近なカウンタや掲示板、チャットからショッピングカートや検索エンジンなどの大規模システムまでウェブ上で、データに動きがある場合は、そのほとんどでCGIが動いています。
こんな便利なCGIシステムをWeProでは安心価格にてレンタルしております。詳しくはお問合せください。また、新規システム開発も承っております。
▼レンタルCGI
ショッピングカートの予約を開始いたします。
間もなく登場!
・自動アンケート集計
・フォームメール
▼Perlリファレンス
a b c
d e f
g h i
j k l
m n o
p q r
s t u
v w x y
z
- /
[m]/PATTERN/[g][i][o]
文字列に対してパターンマッチを行う。
スカラーコンテキスト中では、真なら1、偽なら''(null)を返す。
PATTERNは正規表現でなければならない。
▲TOP
- ?
?PATTERN?[i][o]
基本的な動作は/PATTERN/と全く一緒である。
ただし、resetを実行してから次に再びresetを実行するまでの間に、
1回だけマッチして最初に出現したものを見つける。
▲TOP
- abs
abs VALUE
abs
VALUE値の絶対値を返す。
▲TOP
- accept
accept(NEWSOCKET,GENERICSOCKET)
acceptシステムコールと同等の働きをする。
クライアントからのソケットコネクションを受け付け、
新しいソケットNEWSOCKETをオープンする。
成功すると、ソケットのアドレスを返す。
サーバプロセスを書くのに、この関数を用いる。
▲TOP
- alarm
alarm (SECONDS)
alarm SECONDS
SIGALARMシグナルをSECONDS秒後にプロセスに送信する。
▲TOP
- atan2
atan2(X,Y)
π〜-πの範囲でX/Yのアークタンジェント値を返す
▲TOP
- bind
bind SOCKET,NAME
ソケットSOCKETにネットワークアドレスNAMEを関連付ける。
▲TOP
- binmode
binmode(FILEHANDLE)
バイナリファイルとテキストファイルと区別して扱うような
オペレーティングシステムで、
ファイルを「バイナリ」モードで読み書きするように設定する。
「テキスト」モードに戻すには開き直すしかない。
▲TOP
- bless
bless REF
bless REF,CLASSNAME
パッケージCLASSNAME(省略時は現パッケージ)に
リファレンスREFをオブジェクトとして登録する。
オブジェクトへの参照を返す。
▲TOP
- caller
caller EXPR
caller
現実行中のサブルーチンからEXPR個戻ったサブルーチンの呼び出し元の情報を
配列(パッケージ名、ファイル名、行番号)として返す。
▲TOP
- chdir
chdir(EXPR)
chdir EXPR
chdir
カレントディレクトリーをEXPRに移動する。
EXPRを省略するとホームディレクトリーへ移動する。
▲TOP
- chmod
chmod(LIST)
chmod LIST
ひとつ以上のファイルのパーミッションを同時に変更する。
LISTの1番目の要素は、モードを表す値でなければならない。
▲TOP
- chomp
chomp(LIST)
chomp LIST
chomp(VARIABLE)
chomp VARIABLE
chomp
リストLISTの各要素の末尾の$/(既定値は改行文字)に一致する文字を削除する。
削除した文字を返す。
▲TOP
- chop
chop(LIST)
chop(VARIABLE)
chop VARIABLE
chop
文字列の最後の文字を切り落とし、
切り落とした文字を値として返す。 VARIABLEの省略は$_のを対象とする。
▲TOP
- chown
chown(LIST)
chown LIST
ファイルの所有者を同時に変更する。
LISTの最初の2要素はそれぞれ順にuidとgidでなければならない。
▲TOP
- chr
chr NUMBER
文字コードNUMBERで示される文字を返す。
▲TOP
- chroot
chroot DIRHANDLE
ディレクトリDIRHANDLEをルートディレクトリとして扱う。
▲TOP
- close
close(FILEHANDLE)
close FILEHANDLE
ファイルハンドルに結びつけられているファイル、
ソケット、パイプをクローズする。
既にオープンされているファイルハンドルをopenしようとすると、
まずそれを自動的にクローズする仕組みになっているので、
すぐにオープンしなおすようなファイルハンドルは
closeする必要は無い。ただし、行カウンターはリセットされない。
▲TOP
- closedir
closedir(DIRHANDLE)
closedir DIRHANDLE
opendirによってオープンしたディレクトリーをクローズする。
▲TOP
- connect
connect SOCKET,NAME
ソケットSOCKETをネットワークアドレスNAMEで
指定される他のソケットと接続する。
▲TOP
- cos
cos(EXPR)
cos EXPR
cos
式EXPRのコサイン値を返す。
▲TOP
- crypt
crypt(PLAINTEXT,SALT)
Cライブラリのcrypt()関数と全く同じようにして
文字列を暗号化する。
▲TOP
- dbmclose
dbmclose HASH
ハッシュHASHとDBNデータベースとの結合を解除する。
▲TOP
- dbmopen
dbmopen HASH,DBNAME,MODE
DBMデータベースDBNAMEをオープンし、ハッシュHASHと関連付ける。
DBMデータベースが存在しない場合、パーミッションMODEのデータベースを作成する。
▲TOP
- defined
defined EXPR
式EXPRが実際に値を持っていれば真を、
持っていなければ偽を返す。
▲TOP
- delete
delete $ASSOC{KEY}
連想配列ASSOCから、キーKEYを持つ値を削除する。
▲TOP
- die
die(LIST)
die LIST
die
この関数をevalの外側で使うと、LISTの値を連結した物を
STDERRに出力してから、$!の値(errno)をステータスコードとして
プログラムを終了する。
▲TOP
- do
do BLOCK
do SUBROUTINE(LIST)
do EXPR
do BLOCKという形式では BLOCKに含まれているコマンドを順に実行して、
最後のコマンドの値を返す。 whileやuntilで修飾すると、
まず最初にBLOCKを1回実行してからループ条件をテストする。
do SUBROUTINE(LINE)という形式では
サブルーチンを実行して最後に評価した式の値を返す。
SUBROUTINEとしてスカラー変数を指定すると
その変数の値をサブルーチン名と見なす。
但し、配列要素は許されない。 do EXPRと区別するためにも括弧を使った方が良い。
do EXPRという形式では、EXPRの値をファイル名と見なし、
そのファイルの内容をPerlスクリプトとして解釈実行する。
▲TOP
- dump
dump LABEL
dump
再ロード時の実行開始ラベルLABELを指定して、コアダンプを作成する。
▲TOP
- each
each(ASSOC_ARRAY)
each ASSOC_ARRAY
連想配列から要素のキーと値を取り出して、
2要素の配列値として返す。
この関数を繰り返し呼び出す事によって、
連想配列の全ての要素を順に得る事ができる。
全ての配列を読み込むと、次に空の配列が返される。
更にもう1回eachを呼び出すと、再び最初から繰り返しが始まる。
iterator(反復子)をリセットするには、
全ての要素を読み込まなければならない。
▲TOP
- endgrent
endgrent
ファイル/etc/groupをクローズする。
▲TOP
- endhostent
endhostent
ファイル/etc/hostsをクローズする。
▲TOP
- endnetent
endnetent
ファイル/etc/networksをクローズする。
▲TOP
- endprotent
endprotent
ファイル/etc/protocolsをクローズする。
▲TOP
- endpwent
endpwent
ファイル/etc/passwdをクローズする。
▲TOP
- endservent
endservent
ファイル/etc/servicesをクローズする。
▲TOP
- eof
eof(FILEHANDLE)
eof
この次にFILEHANDLEから読み込もうとした時に
EOFが返されるなら1を返す。 また、FILEHANDLEがオープンされていない場合にも1を返す。
FILEHANDLEに式を与えると、その値がファイルハンドルとして
解釈される。
引数なしでeofを使うと最後に読み込んだファイルハンドルの
EOF状態を返す。
▲TOP
- eval
eval(EXPR)
eval EXPR
eval
eval BLOCK [Ver.4.019以降]
この関数は、式EXPRが返す値を、Perlプログラムとして解釈実行する。
EXPRの内容は、evalを呼び出した時点のプログラムの
コンテキストで実行されるので、変数への代入、
サブルーチンやフォーマットの定義などを行なうと、
その効果はevalが終了した後も有効である。 EXPRはブロックとして扱われるので、その中のローカル変数は
evalが終了するまで有効である。
サブルーチンと同じように、最後に評価した式の値が返される。
構文エラーや実行時エラーが発生すると、evalは未定義値を返す。
そして、$@にエラーメッセージをセットする。
▲TOP
- exec
exec(LIST)
exec LIST
現在実行中のPerlスクリプトを終了して、
代わりに別のプログラムを実行する。 LISTが二つ以上の要素を含むか、あるいは、LISTが2つ以上の要素を持つ
配列であれば、LISTの内容を引数としてCライブラリのexecup(3)を
実行する。
▲TOP
- exists
exists $ASSOC{KEY}
連想配列ASSOCにキーKEYが存在すれば真を返す。
▲TOP
- exit
exit(EXPR)
exit EXPR
exit
プログラムを終了して、EXPRの値をステータスコードとして返す。
▲TOP
- exp
exp(EXPR)
exp EXPR
exp
eのEXPR乗を返す。
▲TOP
- fcntl
fcntl FILEHANDLE,FUNCTION,SCALAR
ファンクションFUNCTIONにより、FILEHANDLEの属性を変更する。
▲TOP
- fileno
fileno FILEHANDLE
ファイルハンドルFILEHANDLEのファイル記述子(整数値)を返す。
▲TOP
- flock
flock(FILEHANDLE,OPERATION)
FILEHANDLEに対してファイルロックを行う。
OPERATIONには以下の数値を指定する。
- 1 読み込み宣言ロック(排他モード)
- 2 書き込み宣言ロック(排他モード)
- 5 読み込み宣言ロック(共有モード)
- 6 書き込み宣言ロック(共有モード)
- 8 ロック解除
▲TOP
- for
for (EXPR1;EXPR2;EXPR3){ BLOCK }
始めにEXPR1を実行し、EXPR2が成立する間、EXPR3とBLOCKを繰り返し実行する。
▲TOP
- foreach
foreach VAR (ARRAY){ BLOCK }
配列ARRAYの各要素を順次VARに読み込み、BLOCKを実行する。
▲TOP
- fork
fork
子プロセスを生成する。
成功すると、親プロセス側にPIDを返す。
▲TOP
- formt
formt NAME =
picture line
value list
write関数で使用する出力の書式を指定する。
NAMEでフォーマット名を指定する。 picture lineで書式を指定し、
value listで対応する値を指定する。 最後には、"."だけの行を置く。
▲TOP
- formline
formline PICTURE,LIST
フォーマット処理時に、内部で使用されるらしい...(?)
▲TOP
- getc
gtec(FILEHANDLE)
getc FILEHANDLE
getc
FILEHANDLEに結びつけられた入力ファイルから、次の1字を入力して返す。
EOFであれば空文字を返す。 FILEHANDLEを省略するとSTDINから入力する。
この関数は非常に遅い。
▲TOP
- getgrent
getgrent
ファイル/etc/groupから情報を一つ得る。
($name,$passwd,$gid,$members) = getgrent
▲TOP
- getgrgid
getgrgid GID
GIDをもとにして、ファイル/etc/groupから情報を得る。
$name = getgrgid($num);
▲TOP
- getgrnam
getgrnam NAME
グループ名をもとにして、ファイル/etc/groupから情報を得る。
$gid = getgrgnam($name);
▲TOP
- gethostbyaddr
gethostbyaddr ADDR,ADDRTYPE
IPアドレスをもとにして、ホスト名を得る。
$host = gethostbyaddr(pack("C4",split(/\./,$ENV{REMOTE_ADDR})),
2);
▲TOP
- gethostent
gethostent
ファイル/etc/hostsから情報を一つ得る。
($name,$aliases,$addrtype,$length,@addrs) =
gethostent;
▲TOP
- getlogin
getlogin
ファイル/etc/utmpから現在のログイン名を得る。
$login = getlogin || getpwuid($<) || "Kilroy";
▲TOP
- getnetbyaddr
getnetbyaddr ADDR,ADDRTYPE
IPアドレスをもとにして、ファイル/etc/networksから情報を得る。
▲TOP
- getnetbyname
getnetbyname NAME
ネットワーク名をもとにして、ファイル/etc/networksから情報を得る。
▲TOP
- getnetent
getnetent
ファイル/etc/networksから情報を一つ得る。
($name,$aliases,$addrtype,$net) = getnetent;
▲TOP
- getpeername
getpeername SOCKET
ソケット「SOCKET」のコネクションの相手側のアドレスを得る。
▲TOP
- getpgrp
getpgrp PID
PIDをもとにして、ファイル/etc/groupから情報を得る。
PID省略時には実行中のPIDを返す。
▲TOP
- getppid
getppid
親プロセスのPIDを得る。
▲TOP
- getpriority
getpriority WHICH, WHO
WHICH(プロセス、プロセスグループ、ユーザ)で指定されたIDの優先順位を得る。
▲TOP
- getprotobyname
getprotobyname NAME
プロトコル名をもとにして、ファイル/etc/protocolsから情報を得る。
▲TOP
- getprotobynumber
getprotobynumber
プロトコル番号をもとにして、ファイル/etc/protocolsから情報を得る。
▲TOP
- getprotoent
getprotoent
ファイル/etc/protocolsから情報を一つ得る。
($name,$aliases,$proto) = getprotoent;
▲TOP
- getpwent
getpwent
ファイル/etc/passwdから情報を一つ得る。
($name,$passwd,$uid,$gid,$quota,$comment,$gcos,$dir,$shell,$expire)
= getpwent;
▲TOP
- getpwnam
getpwnam NAME
ユーザ名をもとにして、ファイル/etc/passwdから情報を得る。
$uid = getpwnam($name);
▲TOP
- getpwuid
getpwuid UID
UIDをもとにして、ファイル/etc/passwdから情報を得る。
$name = getpwuid($num);
▲TOP
- getservbyname
getservbyname NAME, PROTO
サービス名とプロトコル名をもとにして、ファイル/etc/servicesから情報を得る。
▲TOP
- getservbyport
getservbyport PORT, PROTO
ポート番号とプロトコル名をもとに、ファイル/etc/servicesから情報を得る。
▲TOP
- getservent
getservent
ファイル/etc/servicesから情報を一つ得る。
($name,$aliases,$port,$proto) = getservent
▲TOP
- getsockname
getsockname SOCKET
指定されたソケットのアドレスを取得する。
▲TOP
- getsockopt
getsockopt SOCKET, LEVEL, OPTNAME
ソケットに設定されているオプションを取得する。
▲TOP
- glob
glob EXPR
ワイルドカードを含むような式「EXPR」に対し、ファイル名の展開を行った結果を返す。
▲TOP
- gmtime
gmtime EXPR
式「EXPR」で指定した時刻をグリニッジ標準時で取得する。
EXPRを省略すると、現在時刻になる。
▲TOP
- goto
goto LABEL
LABELと言うラベルが付いている文を見付け、
そこから実行を続ける。gotoは関数であるが、値を返さない。
現時点では、メインルーチンの内、do{}にネストされていない部分にのみ
制御を移す事ができる。gotoはあまり効率の良い関数ではない。
▲TOP
- grep
grep (EXPR,LIST)
LISTのひとつ一つの要素を順に$_にセットしてEXPRを評価する
($_は一時的に局所化される)。得られた結果から、
真のものだけからなる配列値を返す。
スカラーコンテキストでは、EXPRが真になった回数を返す。
▲TOP
- hex
hex(EXPR)
hex EXPR
EXPRを16進数を表す文字列と解釈して、その値(10進数)を返す。
▲TOP
- if
if (EXPR) { BLOCK1 } else { BLOCK2 }
EXPRの真偽に応じて、真ならばBLOCK1を、偽ならばBLOCK2を実行する。
else〜BLOCK2は省略可能。
▲TOP
- index
index(STR,SUBSTR,POSITION)
index(STR,SUBSTR)
STR中で、SUBSTRが最初に出現する位置を返す。
POSITIONを与えると、その位置から検索を開始する。
位置は、0をベースとして数えるが、$[がセットされている場合は
この限りではない。
▲TOP
- int
int(EXPR)
int EXPR
EXPRの整数部分を返す。
▲TOP
- ioctl
ioctl FILEHANDLE, FUNCTION, SCALAR
FUNCTIONによりFILEHANDLEの属性を変更する。
▲TOP
- join
join(EXPR,LIST)
LIST(配列名でも構わない)に含まれる文字列を
間にセパレータとしてEXPRをはさみ込んで連結し、
連結した文字列を返す。 逆変換にはsplitを使い、固定長フィールドに収まるようにするには
pack()関数を使えば良い。
▲TOP
- keys
keys(HASH)
keys HASH
連想配列中に存在するキー全てを含む(普通の)配列を返す。
キーは見掛け上、ランダムな順で並べられるが (配列の内容がかわらなければ)、values()やeach()と同じ順になる。
▲TOP
- kill
kill(LIST)
kill LIST
与えられたプロセス(複数も可)にシグナルを送る。
リストLISTの第1要素がシグナルの種類として解釈される。
数値の代わりに文字列によってシグナル名を指定する事もできる。
シグナルの送信に成功したプロセスの数を返す。
▲TOP
- last
lsat LABEL
実行中の最も内側のループ、もしくはLABLEのついたループから抜け出す。
▲TOP
- lc
lc EXPR
式「EXPR」を小文字に変換する。
▲TOP
- lcfirst
lcfirst EXPR
式「EXPR」の最初の文字を小文字に変換する。
▲TOP
- length
length(EXPR)
length EXPT
EXPRの値の文字単位の長さを返す。
例によってEXPRを省くと、$_の長さを返すが、 lengthの直後にEXPRのはじまりと解釈できるものが置かれていると、
Perlのレキシカルアナライザが混乱してしまい、
意図しない結果が得られる事がある。
▲TOP
- link
link(OLDFILE,NEWFILE)
OLDFILEにリンクした新しいNEWFILEを作成する。
成功すると1を返し、失敗すると0を返す。
▲TOP
- listen
listen SOCKET, QUESIZE
QUESIZEで待ち行列の長さを指定し、
ソケットSOCKETから接続要求を受け付けることをシステムに知らせる。
▲TOP
- local
local(LIST)
LISTで与えられた変数を、それを取り囲むブロック、サブルーチン、
eval、doの中に局所化する。
▲TOP
- localtime
localtime(EXPR)
localtime EXPR
time()関数が返す形式の時刻をローカル時間で表現したり、
9要素の配列値へと変換する。
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time);
▲TOP
- log
log(EXPR)
log EXPR
eを底とするEXPRの対数を返す。
▲TOP
- lstat
lstat(FILEHANDLE)
lstat FILEHANDLE
lstat(EXPR)
stat()関数と同等の働きをするが、
シンボリックリンクが示している先ではなく、
シンボリックリンクそのものの情報を取得する。
シンボリックリンクが実装されていないシステムでは
通常のstatが行われる。
▲TOP
- map
map EXPR, LIST
リストLISTの各要素について、式EXPRを評価した結果をリストにして返す。
▲TOP
- mkdir
mkdir(FILEHANDLE,MODE)
mkdir FILEHANDLE,MODE
MODEで指定したパーミッションを持つディレクトリFILEHANDLEを作成する。
▲TOP
- my
my EXPR
式EXPRで指定された変数をmy変数として宣言する。
▲TOP
- next
next [LABEL]
実行中の最も内側のループ、もしくはLABELのついたルールにおいて、
次の繰り返しをはじめる。
▲TOP
- no
no MODULE LIST
モジュールMODULEの仕様を終了する。
▲TOP
- oct
oct(EXPR)
oct EXPR
EXPRを8進数を表す文字列と解釈して、その値(10進数)を返す。
▲TOP
- open
open(FILEHANDLE,EXPR)
open(FILEHANDLE)
open FILEHANDLE
EXPRで指定された名前を持つファイルをオープンして、
それをFILEHANDLEと結びつける。 FILEHANDLEには直接ファイルハンドル名を指定するか、
あるいは値がファイルハンドル名になるような式を指定する。
あらかじめFILEHANDLEと同じ名前のスカラー変数に
ファイル名をセットしておけば、EXPRを省略できる。
▲TOP
- opendir
opendir(DIRHANDLE,EXPR)
EXPRで与えられた名前のディレクトリを、
readdir()、telldir()、seekdir()、rewinddir()、closedir()で
処理できるようにオープンする。
▲TOP
- ord
ord(EXPR)
ord EXPR
EXPRの先頭の文字のASCIIコード値(数値)を返す。
この関数は、常に符号無しの値を返す。符号付が欲しければ
unpack('c',EXPR)とすれば良い。
▲TOP
- pack
pack(TEMPLATE,LIST)
配列または値のLISTを受け取って、
それをバイナリデータの構造体にパックして返す。
TEMPLATEは値の順番とその型を示すように型指定文字を並べたものである。
型指定文字には以下のようなものがある。
| a |
ASCII文字列、ヌル文字を詰める |
| A |
ASCII文字列、スペースを詰める |
| b |
ビットストリング、下位ビットから上位ビットの順(vec()と同じ) |
| B |
ビットストリング、上位ビットから下位ビットの順 |
| h |
16進文字列、下位ニブルが先 |
| H |
16進文字列、上位ニブルが先 |
| c |
符号付きchar値 |
| C |
符号なしchar値 |
| s |
符号付きshort値 |
| S |
符号なしshort値 |
| i |
符号付きint値 |
| I |
符号なしint値 |
| l |
符号付きlong値 |
| L |
符号なしlong値 |
| n |
ナットワークバイトオーダ(ビッグエンディアン)によるshort値 |
| N |
ネットワークバイトオーダ(ビッグエンディアン)によるlong値 |
| f |
(機種依存の)単精度浮動小数点数 |
| d |
(機種依存の)倍精度浮動小数点数 |
| p |
文字列へのポインタ |
| v |
リトルエンディアンによるshort値[Ver.4.019以降] |
| V |
リトルエンディアンによるlong値[Ver.4.019以降] |
| x |
ヌルバイト |
| X |
1バイト後退する |
| @ |
絶対位置までヌルバイトを詰める |
| u |
uuencodeした文字列 |
型指定文字の後ろには、それが何回繰り返されるかを示す数countを置いても良い。
型指定文字とcountをあわせたものがフィールド指定子になる。
空白は無視されるので、間に空白を挟んでも良い。
a,A,b,B,h,Hを除くすべての型はLISTからcount個の要素を取り出して使用する。
countに*を指定すると、その時点で残されている全要素を意味する。
実数については、機種依存の形式だけがサポートされている。
ナットワーク上の標準形式が存在しないので、マシン間での交換のための手段は用意していない。
つまり、あるマシンでpackした浮動小数点数が、他のマシンでは正しくunpackできない可能性がある。
▲TOP
- package
package NAMESPACE
現在のブロックが、パッケージNAMESPACEに属することを宣言する。
▲TOP
- pipe
pipe READHANDLE, WRITEHANDLE
READHANDLをパイプでWRITEHANDLEに繋げる。
▲TOP
- pop
pop(ARRAY)
pop ARRAY
配列をスタックのように扱って、末尾の要素を取り除いて、その要素を値として返す。
結果として配列の長さがひとつ短くなる。
これと同じ効果を持つものは以下の通り
$tmp = $ARRAY[$#ARRAY--];
$tmp = splice(@ARRAY,-1,1);
▲TOP
- print
print(FILEHANDLE LIST)
print(LIST)
print FILEHANDLE LIST
print LIST
print
ひとつの文字列、あるいはコンマで区切って並べた複数の文字列を出力する。
成功すれば1、失敗すれば0を返す。 FILEHANDLEとしてスカラー変数を与えると、その変数の値がFILEHANDLEと解釈される。
変数をFILEHANDLEとして与える場合、その直後のトークンが項(term)なら、
間に+をいれるか、括弧で因数の周りを囲まなければ、それを誤って演算子だと解釈してしまうことがある。
引数全体を括弧で囲む場合を除いて、printの直後に左括弧を置いてはならない。
間に+を置くか、あるいは引数全体を括弧で囲まなければならない。
▲TOP
- printf
printf(FILEHANDLE FORMAT,LIST)
printf(FORMAT,LIST)
printf FILEHANDLE FORMAT,LIST
printf FORMAT,LIST
フォーマットした文字列をFILEHANDLEへ出力する。
この関数は次のコードと完全に等価である。
print FILEHANDLE sprintf(LIST)
FORMATの指定一覧はsprintfを参照
▲TOP
- push
push(ARRAY,LIST)
この関数は、配列ARRAY(@はつけなくても良い)をスタックのように扱い、
LISTに含まれる値をARRAYの末尾に追加する。
▲TOP
- quotemeta
quotemeta EXPR
式EXPRのすべてのメタキャラクタに「\」を付けた文字列を返す。
▲TOP
- rand
rand(EXPR)
rand EXPR
rand
0以上、EXPR未満の小数点を含んだ乱数を返す。
EXPRには正の数を与えなければならない。 srand()も参照すること。
▲TOP
- read
read(FILEHANDLE,SCALAR,LENGTH,OFFSET)
read(FILEHANDLE,SCALAR,LENGTH)
FILEHANDLEからLENGTHバイトのデータを変数SCALARに読み込む。
実際に読み込んだバイト数を返す。 EOFなら0を返し、エラーなら未定義を返す。
OFFSETを指定すると、読み込み開始位置をその位置にセットする。
readの逆の操作を行うには単にprintを使えば良い。
▲TOP
- readdir
readdir(DIRHANDLE)
readdir DIRHANDLE
スカラーコンテキストで実行すると、opendir()でオープンしたディレクトリの次のエントリを返す。
配列コンテキストで実行すると、そのディレクトリの残りのすべてのエントリを返す。
これ以上エントリが無い場合、スカラーコンテキストでは未定義を、
配列コンテキストでは空リストを返す。
例えば、カレントディレクトリのすべてのファイルを表示するには以下のようにする。
opendir(THISDIR,".");
@allfiles = readdir(THISDIR);
closedir(THISDIR);
print "@allfiles\n";
もし、.と..を除きたい場合は
@allfiles = grep(!/^\.\.?$/, readdir(THISDIR));
ドットファイルを全て除く場合は
@allfiles = grep(!/^\./, readdir(THISDIR));
テキストファイルだけを選択する場合は
@textfiles = grep(-T, readdir(THISDIR));
▲TOP
- readlink
readlink(EXPR)
readlink EXPR
readlink
シンボリックリンクが実装されているマシンでは、シンボリックリンクの値を返す。
シンボリックリンクの実装されていないマシンでは致命的エラーが発生する。
▲TOP
- recv
recv(SOCKET,SCALAR,LEN,FLAGS)
SOCKETファイルハンドルからLENバイトのデータを変数SCALARに受信しようとする。
成功ならば送信元のアドレスを返し、失敗なら未定義を返す。
▲TOP
- redo
redo [LABEL]
実行中の最も内側のループ、もしくはLABELのついたループを、
繰り返し条件を評価せずに繰り返しを再実行する。
▲TOP
- ref
ref EXPR
EXPRがリファレンスなら型、あるいはパッケージ名を返す。そうでなければ空文字を返す。
▲TOP
- rename
rename(OLDNAME,NEWNAME)
ファイル名OLDNAMEをNEWNAMEへと変更する。
成功なら1を、失敗なら0を返す。
異なるファイルシステム間でファイルを移動することはできない。
既にNEWNAMEという名前のファイルが存在すると、その内容は失われる。
▲TOP
- require
require(EXPR)
require EXPR
require
EXPRで指定されたファイルに入っているperlのスクリプトを読み込んで実行する。
これはファイルの中身をevalするのと似ているが、
requireはそのファイルがまだ読み込まれていないことを確認する。
また、requireは配列@INCに含まれているパスをサーチしてくれる。
▲TOP
- reset
reset(EXPR)
reset EXPR
reset
この関数は、変数をクリアしたり、??演算子をリセットして再びマッチするようにする。
EXPRは文字を列挙したものと解釈される(ハイフンを用いて範囲を指定することも可能)。
EXPRに含まれる文字を先頭にもつ変数や配列は、全て初期状態に戻される。
EXPRを省略すると?PATTERN?をリセットして、再びマッチできる状態にする。
この関数は、カレントパッケージ内の変数と、??演算子に対してのみ作用する。
▲TOP
- return
return LIST
指定された値を持って、サブルーチンから呼び出し元へと戻る。
サブルーチンは最後に評価した式の値を返すようになっているので、
この方がreturnを使うよりも望ましい。
サブルーチンの外ではreturnの使用は禁止されていて、使うと致命的エラーが発生する。
▲TOP
- reverse
reverse(LIST)
reverse
配列コンテキストで使うと、LISTの要素を逆順に並べた配列を返す。
この操作はポインタを入れ替えるだけなので、効率が良い。
また、reverseは連想配列のキーと値を入れ替える働きもある。
同じ値を持つ要素が存在すると、それらのうち1つしか残らない。
▲TOP
- rewinddir
rewinddir(DIRHANDLE)
rewinddir DIRHANDLE
DIRHANDLEに対して、readdir()する位置をディレクトリの先頭に設定する。
readdir()をサポートするマシンでも、この関数が用意されていないことがある。
▲TOP
- rindex
rindex(STR,SUBSTR,POSITION)
rindex(STR,SUBSTR)
indexと似ているが、STRの中でSUBSTRが最後に出現する位置を返す。
SUBSTRが見つからなければ、($[-1)を返す。
▲TOP
- rmdir
rmdir(FILEHANDLE)
rmdir FILEHANDLE
rmdir
FILEHANDLEで指定したディレクトリが空ならば、それを削除する。
成功なら1を返し、失敗なら0を返す。
▲TOP
- s
s/PATTERN/REPLACEMENT/[g][i][e][o]
文字列に対してパターンマッチを行い、パターンPATTERNが見つかればそれをREPLACEMENTで置き換える。
置き換えを行った回数を返す。置き換えを行わなければ偽0を返す。
| g |
出現したPATTERNを全て置き換える |
| i |
パターンマッチの際、大文字と小文字の区別をしない |
| e |
置き換え文字列を式とみなし、それをeの数だけ評価する |
| o |
変数展開する時にパターンを1回だけコンパイルする |
スラッシュの代わりに英数字以外の任意の文字をデリミタとして使うことができる。
シングルクォートを用いると置き換え文字列REPLACEMENTに対して何の解釈も行われない
(ただし、eオプションの方が優先される)。
バッククォートを用いるとREPLACEMENTをコマンドとして実行した出力で置き換える。
▲TOP
- scalar
scalar(EXPR)
配列コンテキストとスカラーコンテキストで異なる結果を返すようなEXPRを、
強制的にスカラーコンテキストで評価する。 LIST中で特にある式をスカラーコンテキストで評価したい時に用いられる。
▲TOP
- seek
seek(FILEHANDLE,POSITION,WHENCE)
標準I/Oライブラリのfseekと同じように、FILEHANDLEのファイルポインタを任意の位置にセットする。
WHENCEによって、POSITIONがファイルのどの位置を基点とするかを指定する。
0ならファイルの先頭、1なら現在のファイルポジション、2ならファイルの末尾である。
WHENCEが1か2ならばPOSITIONに負の値を与えても良い。
▲TOP
- seekdir
seekdir(DIRHANDLE,POS)
DIRHANDLEに対して、readdir()する位置をPOSに指定する。
POSはtelldir()が返した値でなければならない。
ディレクトリの圧縮に関して、seekdirライブラリルーチンと同様な注意が必要。
reaaddir()が実装されていても、この関数が実装されていないマシンもある。
もちろん、readdir()が実装されていなければ、この関数も実装されていない。
▲TOP
- select
select(FILEHANDLE)
select
select(RBITS,WBITS,EBITS,TIMEOUT)
1番目の形式は、現在セレクトされている出力用のファイルハンドルを返す。
また、FILEHANDLEを与えると、それを出力用のファイルハンドルとしてセレクトする。
これによって、writeやprintでファイルハンドルを指定しない場合に
FILEHANDLEに対して出力が行われるようになる。
また、この関数を用いることによって出力に関する特殊変数がFILEHANDLEに関する値を示すようになる。
2番目の形式は1番目の形式とは何の関連も無い。
こちらは指定されたビットマスクを渡してselectシステムコールを実行する。
▲TOP
- send
send(SOCKET,MSG,FLAGS,TO)
send(SOCKET,MSG,FLAGS)
ソケットに対してメッセージを送信する。
同盟のシステムコールと同じフラグを受け取る。
コネクトしていないソケットにsendする時には、送り先をTOに指定する必要がある。
▲TOP
- sethostent
sethostent STAYOPEN
ホスト情報の検索処理をリセットする。
▲TOP
- setnetent
setnetent STAYOPEN
ネットワーク情報の検索処理をリセットする。
▲TOP
- setpgrp
setpgrp(PID,PGRP)
PIDで指定されたプロセスのプロセスグループ(pgrp)をPGRPにする。
PIDに0を渡すと、現在実行中のプロセスのpgrpが変更される。
setpgrpを実装していないマシンでsetpgrpを実行すると、致命的エラーが発生する。
システムによっては、与えられたパラメータを無視して、常にsetpgrp(0,$$)を実行するものもある。
▲TOP
- setpriority
setpriority WHICH, WHO, PRIORITY
プロセス、プロセスグループ、ユーザの優先順位を設定する。
▲TOP
- setpwent
setpwent
パスワード情報の検索処理をリセットする。
▲TOP
- setsockopt
setsockopt(SOCKET,LEVEL,OPTNAME,OPTVAL)
ソケットSOCKETに対してソケットオプションを設定する。
▲TOP
- shift
shift(ARRAY)
shift ARRAY
shift
配列の先頭の要素を取り除き、その値を返す。
結果として配列の要素の個数は1つだけ減り、残りは1つずつ前に向かってずらされる。
ARRAYを省いた場合、メインプログラム内では@ARGVが、サブルーチン内では@_が対象となる。
▲TOP
- shutdown
shutdown(SOCKET,HOW)
HOWで指定された方法にしたがって、ソケットコネクションを閉じる。
HOWに指定する値はshutdownコマンドと全く同じである。
▲TOP
- sin
sin(EXPR)
sin EXPR
sin
ラジアンで表現された式EXPRのサイン値を返す。
▲TOP
- sleep
sleep(EXPR)
sleep EXPR
sleep
スクリプトをEXPR秒間スリープさせる。
EXPRを省略すると、永久にスリープする。
スリープ中のプロセスにSIGALRMを送れば、実行を再開することができる。
実際にスリープしていた時間を返す。
システムによっては秒の先頭で数えるものもあり、
例えばsleep 1としても、実際にスリープする時間はタイミングによって0〜1秒と幅がある。
select()の2番目の形式(TIMEOUTを指定する)がサポートされているのなら、
そちらを使うほうが精度の高い指定ができる。
また、itimerルーチンをサポートしているUNIXなら、
syscall()を用いてitimerルーチンを用いるのも良い。
▲TOP
- socket
socket(SOCKET,DOMAIN,TYPE,PROTOCOL)
指定された種類のソケットをオープンして、ファイルハンドルSOCKETに結び付ける。
DOMAIN、TYPE、PROTOCOLの指定はUNIXのsocketコマンドと同じである。
h2phによって、sys/socket.hを処理して
これらの引数の指定に使う定数定義をPerlライブラリ中に用意する必要があるかもしれない。
▲TOP
- socketpair
socketpair(SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL)
指定された型、ドメインを持つ名前の無いソケットのペアを作成する。
DOMAIN、TYPE、PROTOCOLの指定はUNIXコマンドのsocketpairと同じである。
socketpairを実装していないマシンでこの関数を実行すると致命的エラーが発生する。
この関数は、大抵フォークする直前に実行される。
そして、フォーク後には一方のプロセスでSOCKET1をクローズし、
もう一方のプロセスでSOCKET2をクローズしなければならない。
このようにして得られたソケットはpipe()関数で得られるファイルハンドルとは違い、
双方向に使用することが可能である。
▲TOP
- sort
sort(SUBROUTINE LIST)
sort(LIST)
sort SUNROUTINE LIST
sort BLOCK LIST [Ver.4.019以降]
sort LIST
LISTをソートして、結果を配列値として返す。
ソートに際して、配列中の存在しない要素は取り除かれる。
SUBROUTINEやBLOCKを指定しないと、普通の文字列の大小比較に基づいてソートする。
このサブルーチンは、効率を重視して通常のサブルーチンとは違う特殊な呼び出しを行うので、
次の点に注意しなければならない:
比較を行うサブルーチンは再帰サブルーチンであってはならない。
また、比較される2つの要素は、@_を通してではなく、2つの変数$a、$bに直接渡される。
$aと$bは、参照渡しされるので、サブルーチン内で値を変えてはならない。
サブルーチンは$aと$bを比較して、$aを前に置くなら負、$bを前に置くなら正、
値が等しい時は0を返す。 SUBROUTINEにスカラー変数を指定することもでき、
その場合にはその変数の値がサブルーチン名として扱われる。
Ver.4.019以降では、サブルーチン名の代わりに名前の無いインラインのサブルーチンを
BLOCKとして指定することも可能。
sub byage{ $age{$a} <=> $age{$b} }
@result = sort byage @data;
@result = sort { $age{$a} <=> $age{$b}; } @data [Ver.4.019以降]
@result = sort { $age{$a} <=> $age{$b} } @data [Ver.4.035以降]
以上は、全て同じ値を返す。
▲TOP
- splice
splice(ARRAY,OFFSET,LENGTH,LIST)
splice(ARRAY,OFFSET,LENGTH)
splice(ARRAY,OFFSET)
配列ARRAYから、OFFSETで指定された(OFFSETが負であれば最後の要素から数えた)
要素以降のLENGTH個(指定されなければ全部)の要素を取り除く。
LISTが指定されている場合は、取り除いた要素の代わりにLISTの要素を挿入する。
ARRAYから取り除かれた要素を返す。
次は、それぞれ同じ結果になる。
push(@a,$x,$y) splice(@a,@a,0,$x,$y)
pop(@a) splice(@a,-1)
shift(@a) splice(@a,0,1)
unshift(@a,$x,$y) splice(@a,0,0,$x,$y)
$a[$x] = $y splice(@a,$x,1,$y)
▲TOP
- split
split(/PATTERN/,EXPR,LIMIT)
split(/PATTERN/,EXPR)
split(/PATTERN/)
split
文字列をフィールドに分割する。分割して得られた(複数の)文字列を配列値として返す。
PATTERNにマッチするものが文字列を分割するデリミタになる。
PATTERNを省略すると、空文字/[ \t\n]+/をデリミタとする。
デリミタは2文字以上であっても構わない。
LIMItを指定すると、文字列を最大LIMIT個のフィールドに分割する。
もちろん、文字列に含まれるデリミタの数が足りない場合、LIMITより少ない個数に分割される。
また、LIMITを指定しないと、末尾にあるヌルフィールドは削除されてしまう。
PATTERNにカッコが含まれると、デリミタ中のカッコにマッチしたサブパターンもsplitが返す配列値に含まれるようになる。
/PATTERN/の代わりに実行時に変化しうるパターンを表す式を与える事も出来る。
特殊なケースとして、1個のスペース" "を指定すると、引数なしで呼び出した場合と同様に空白文字で分割が行われるが、
行頭に空白文字があっても空の第1フィールドを生成しない。
つまり、split(' ')はawkのデフォルトの振る舞いをエミュレートする。
これに対して、split(/ /)は行頭に置かれたスペースの個数だけからのフィールドを生成する。
splitの逆の操作を行う関数はjoinである。
予め決まった位置にあるフィールドを文字列から取り出すにはunpackを使う。
▲TOP
- sprintf
sprintf(FORMAT,LIST)
通常のprintfと同じ取り決めに従って、フォーマットした文字列を返す。
FORMAT文字列はフィールド指定子を埋め込んだテキストで、
フィールドはLISTの要素1つ1つによって置き換えられる。
フィールド指定子は、大抵 %m.nx という書式で書かれる。
ここで、mとnはサイズを示し、フィールドのタイプによって解釈される。また、これらは省略可能である。
xはフィールドのタイプを示し、以下のいずれかである。
| s |
文字列 |
| c |
文字 |
| d |
10進数 |
| ld |
10進数(long) |
| u |
符号なし10進数 |
| lu |
符号なし10進数(long) |
| x |
16進数 |
| lx |
16進数(long) |
| o |
8進数 |
| lo |
8進数(long) |
| e |
浮動小数点数(指数形式) |
| f |
浮動小数点数(固定小数点形式) |
| g |
浮動小数点数(コンパクト形式) |
たいていの場合、mはフィールドの最小長(負なら左寄せにする)を表し、
nは指数表示の場合には精度、それ以外の場合はフィールドの最大長を表す。
フィールド内の空きを埋めるのに、通常、文字列ではスペース、数値では0が用いられる。
フィールドの長さに*を指定する事は出来ない。
▲TOP
- sqrt
sqrt(EXPR)
sqrt EXPR
sqrt
EXPRの平方根を返す。
▲TOP
- srand
srand(EXPR)
srand EXPR
srand
rand演算子が使用する乱数の素(ランダムシード)をセットする。
EXPRを省略するとsrand(time)を実行するが、
これはかなり予測可能な乱数値を生成してしまうので、
パスワードなどを生成すと言ったセキュリティーに関わる用途に用いないほうが良い。
代わりにsrand(time|$$)と言った値を用いると良い。
▲TOP
- stat
stat(FILEHANDLE)
stat FILEHANDLE
stat(EXPR)
FILEHANDLEにオープンされているファイル、あるいはEXPRで表される名前を持つファイルに関する情報を、
13要素の配列値として返す。
失敗すると空リストを返す。典型的な使い方は次のようになる。
($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime,$blksize,$blocks)=stat($filename);
$blksizeと$blocksはBSDから派生したOSのみで定義される。
statに特殊なファイルハンドル _ を渡すと、statシステムコールは行わず、
最後に実行したstat演算子や、内部的にstatシステムコールを呼び出す演算子(-xなど)から得られた
stat構造体の内容が返される。
▲TOP
- study
study(SCALAR)
study SCALAR
study
値が変更されるまでに何回もパターンマッチの対象になるような文字列SCALARの内容を「予習」しておく。
予習にはそれなりの時間がかかるので、この関数を使うほうが早いとは限らない。
▲TOP
- sub
sub BLOCK
sub NAME
sub NAME BLOCK
サブルーチンNAMEを定義する。
▲TOP
- substr
substr(EXPR,OFFSET,LENGTH,REPLACEMENT)
substr(EXPR,OFFSET,LENGTH)
substr(EXPR,OFFSET)
EXPRから部分文字列を取り出して返す。
位置OFFSETは先頭の文字をオフセット0(あるいは$[に設定した値)として表現した値である。
OFFSETが負(で$[より小さい)なら、文字列の末尾からOFFSET分だけ戻ったところを意味する。
LENGTHを省略すると、文字列の末尾までと解釈される。
substr()を左辺値として使うことも出来る。この場合、EXPRに左辺値として代入される。
▲TOP
- symlink
symlink(OLDFILE,NEWFILE)
ファイル名OLDFILEへのシンボリックリンクNEWFILEを作成する。
シンボリックリンクのサポートされていないマシンで行いうと、致命的エラーが発生する。
evalを用いてエラーをトラップすることが出来る。
▲TOP
- sysread
sysread(FILEHANDLE,SCALAR,LENGTH,OFFSET)
sysread(FILEHANDLE,SCALAR,LENGTH)
FILEHANDLEからLENGTHバイト分読んで、変数SCALARに代入する。readシステムコールを使用。
▲TOP
- system
system(LIST)
system LIST
system PROGRAM LIST
システム上の任意のプログラムを実行する。
この関数は、最初にforkが行われることと、
実行したプログラムが完了するまでもとのスクリプトが待つことが"exec
LIST"と違う。
▲TOP
- syswrite
syswrite(FILEHANDLE,SCALAR,LENGTH,OFFSET)
syswrite(FILEHANDLE,SCALAR,LENGTH)
syswrite(FILEHANDLE,SCALAR)
FILEHANDLEに対し、OFFSETから始まる位置に、SCALARの内容をLENGTHバイト書きこむ。
FILEHANDLEに書きこまれたバイト数を返す。 writeシステムコールを使用。
▲TOP
- tell
tell(FILEHANDLE)
tell FILEHANDLE
tell
この関数はFILEHANDLEの現在のファイルポジション(バイト単位)を返す。
▲TOP
- telldir
telldir(DIRHANDLE)
telldir DIRHANDLE
DIRHANDLEの現在のreaddir()の位置を返す。
この関数の値をseekdir()へ渡せば、ディレクトリ中の特定の位置をアクセスできる。
readdir()が実装されているマシンでもこの関数が実装されていないことがある。
▲TOP
- time
time
1970年1月1日UTCからの(閏秒を除いた)秒数を返す。
この関数が返す値はgmtime()やlocaltime()に渡したり、
stat()で得られるファイルの変更時刻や修正時刻と比較したりすることが出来る。
▲TOP
- times
times
実行中のプロセスとその子プロセスが消費したユーザ/システムCPU時間を4要素の配列値として返す。
($user,$system,$cuser,$csystem)=times;
▲TOP
- tr
tr/SEARCHLIST/REPLACEMENTLIST/[c][d][s]
y/SEARCHLIST/REPLACEMENTLIST/[c][d][s]
文字列の中にSEARCHLISTに含まれる文字が存在すれば、
それらをすべてREPLACEMENTLISTの中の対応する文字で置き換える。
dオプション時を除いて、SEARCHLISTよりREPLACEMENTLISTが短い場合、
REPLACEMENTLISTの最後の文字が繰り返される。
また、同様にREPLACEMENTLISTが空ならばSEARCHLISTと同じ物が含まれると解釈される。
| c |
SEARCHLISTを反転させる |
| d |
SEARCHLISTに含まれるがREPLACEMENTLISTに含まれない文字をすべて削除する |
| s |
置き換えの結果同一文字が並ぶ時にそれを一文字に置き換える |
▲TOP
- truncate
truncate(FILEHANDLE,LENGTH)
truncate(EXPR,LENGTH)
FILEHANDLEにオープンされているファイル、またはEXPRで指定される名を持つファイルを
LENGTHで指定された長さに切り詰める。 truncataを実装していないマシンでこの関数を呼び出すと致命的エラーが発生する。
▲TOP
- uc
uc EXPR
uc
EXPRを大文字に変換する。
▲TOP
- ucfirst
ucfirst EXPR
ucfirst
EXPRの最初の文字を大文字に変換する。
▲TOP
- umask
umask(EXPR)
umask EXPR
umask
プロセスのumask値をEXPRにして、元のumask値を返す
(umaskとは、ファイルを作成する時に、
パーミッションのどのビットをオフにするかをUNIXシステムに指示するためのもの)。
EXPRを省略すると、現在のumask値を返す。
▲TOP
- undef
undef(EXPR)
undef EXPR
undef
この関数は、EXPRを未定義にする。 EXPRは左辺値でなければならない。
スカラー値、配列全体、サブルーチン名だけを処理することが出来る。
この関数は、常に未定義値を返す。 EXPRを省略すると何の作用も無いが、この場合でも未定義値を返す。
▲TOP
- unless
unless (EXPR) { BLOCK1 } else { BLOCK2 }
ifとは逆に、EXPRが偽の時にBLOCK1を、真の時にBLOCK2を実行する。
else〜BLOCK2は省略可能。
▲TOP
- unlink
unlink(LIST)
unlink LIST
LISTで指定されたファイルを削除する。削除に成功したファイルの数を返す。
スーパーユーザが-Uオプション付きでPerlを実行した時だけディレクトリを削除することが出来る。
しかし、ファイルシステムに深刻なダメージを与える可能性があるので、rmdirを使う。
▲TOP
- unpack
unpack(TEMPLATE,EXPR)
この関数はpack()の逆の働きをする。
バイナリデータの構造体を含む文字列を受け取り、それを配列値にして返す。
TEMPLATEはpack()の場合とほとんど同じ形式である。
| a |
ASCII文字列、ヌル文字やスペースはそのまま残す |
| A |
ASCII文字列、ヌル文字やスペースを取り除く |
| b |
ビットストリング、下位ビットから上位ビットの順(vec()と同じ) |
| B |
ビットストリング、上位ビットから下位ビットの順 |
| h |
16進文字列、下位ニブルが先 |
| H |
16進文字列、上位ニブルが先 |
| c |
符号付きchar値 |
| C |
符号なしchar値 |
| s |
符号付きshort値 |
| S |
符号なしshort値 |
| i |
符号付きint値 |
| I |
符号なしint値 |
| l |
符号付きlong値 |
| L |
符号なしlong値 |
| n |
ナットワークバイトオーダ(ビッグエンディアン)によるshort値 |
| N |
ネットワークバイトオーダ(ビッグエンディアン)によるlong値 |
| f |
(機種依存の)単精度浮動小数点数 |
| d |
(機種依存の)倍精度浮動小数点数 |
| p |
文字列へのポインタ |
| v |
リトルエンディアンによるshort値[Ver.4.019以降] |
| V |
リトルエンディアンによるlong値[Ver.4.019以降] |
| x |
1バイト読み飛ばす |
| X |
1バイト後退する |
| @ |
次のフィールドの絶対位置を指定 |
| u |
uuencodeした文字列 |
▲TOP
- unshift
unshift(ARRAY,LIST)
この関数は、shiftと反対の働きをする。
LISTをARRAYの先頭に挿入して、挿入後のARRAYの要素数を返す。
▲TOP
- until
until (EXPR) { BLOCK }
whileとは逆に、EXPRが偽である間BLOCKを繰り返し実行する。
▲TOP
- utime
utime(LIST)
utime LIST
(1個以上の)ファイルのアクセス時刻と修正時刻を変更する。
LISTの最初の2要素は順に、アクセス時刻と修正時刻でなければならない。
変更に成功したファイルの個数を返す。
▲TOP
- values
values(ASSOC_ARRAY)
values ASSOC_ARRAY
連想配列中に存在するすべての値を含む配列を返す。
▲TOP
- vec
vec(EXPR,OFFSET,BITS)
EXPRの値の文字列を符号なし整数のベクタとして扱い、OFFSETとBITで指定した要素の値を返す。
▲TOP
- wait
wait
子プロセスが終了するまで待ち、終了した子プロセスのpidを返す。
子プロセスがひとつも無ければ-1を返す。
▲TOP
- waitpid
waitpid(PID,FLAGS)
特定の子プロセスが終了するのを待ち、そのプロセスが終了したら真を返す。
▲TOP
- wantarray
wantarray
現在実行しているサブルーチンの呼び出し元のコンテキストが配列値を求めているなら真を返す。
コンテキストがスカラー値を求めているなら偽を返す。
▲TOP
- warn
warn(LIST)
warn LIST
dieと同じようにメッセージをSTDERRに出力するが、プログラムを終了しない。
▲TOP
- while
write (EXPR) { BLOCK }
EXPRが真である間、BLOCKを繰り返し実行する。
▲TOP
- write
write(FILEHANDLE)
write(EXPR)
write
(複数行にわたることもある)レコードを、
ファイルハンドルに設定されているフォーマットにしたがって整形してファイルに出力する。
writeはreadの反対ではない。
▲TOP
|
|