5部 関数リファレンス

Perl関数一覧

アルファベット順のPerl関数一覧

-X ファイルテスト演算子
abs 絶対値を返す
accept 着信するソケットの接続を受け付ける
alarm シグナルを送る
atan2 アークタンジェント(逆正接)を返す
bind ネットワーク・アドレスをソケットに結び付ける
binmode ファイルの読み書きをバイナリモードに設定する
bless 所属するクラスをオブジェクトに伝える
caller サブルーチン呼び出しのスタック情報を返す
chdir カレント・ディレクトリを移動する
chmod ファイルのパーミッションを変更する 
chomp 行末文字を切り落とす
chop 文字列の最後の文字を切り落とす 
chown ファイルのオーナーとグループを変更する 
chr 文字コードを対応する文字に変換する
chroot ルート・ディレクトリを変更する 
close ファイルをクローズする 
closedir ディレクトリをクローズする 
connect リモート・ソケットへの接続を行う
continue  
cos コサイン(余弦)を返す 
crypt 文字列を暗号化する 
dbmclose DBMファイルとハッシュの解除を行なう
dbmopen DBMファイルとハッシュの結合を行なう
delete ハッシュから指定したキーと値を削除する
die エラーメッセージとともにスクリプトを終了する
do BLOCK 処理の繰り返しを指定するステートメントです  
do EXPR ファイルの内容を実行します  
dump コアダンプを行なう
each ハッシュから次のキーと値のリストを返す
eof ファイルの終わりを検知する
eval 引数をPerlスクリプトとして実行する 
exec システムコマンドを実行する 
exists ハッシュ内に指定したキーが存在するか判定する 
exit Perlプログラムを終了する
exp e(自然対数の底) のn乗を返す
fcntl ファイルの制御を行う
fileno ファイル記述子を返す
flock ファイルのロック・アンロックを行う
fork 新しいプロセスを生成する
format writeで使うピクチャーフォーマットを宣言する
formline formatの内部関数
get_* システムライブラリと同様の関数

endgrent / endhostent / endnetent /
endprotoent / endpwent / endservent /
getgrent / getgrgid / getgrnam /
gethostbyaddr / gethostbyname / gethostent /
getnetbyaddr / getnetbyname / getnetent /
getprotobyname / getprotobynumber / getprotoent /
getpwent / getpwnam / getpwuid /
getservbyname / getservbyport / getservent /
setgrent / sethostent / setnetent /
setprotoent /
setpwent / setservent

getc ファイルから 1 バイト読み込んで返す
getlogin 現在のログイン名を返す
getpeername 接続相手のソケット・アドレスを返す
getpgrp プロセスグループを返す
getppid 親プロセスのプロセスIDを返す
getpriority プライオリティを返す
getsockname ソケット情報を返す
getsockopt ソケットのオプションを返す
glob ファイル名を検索する
gmtime time形式の時間をグリニッジ標準時に変換する
goto 引数の場所にジャンプする
grep マッチする要素を返す
hex 16進数を10進数に変換する 
import モジュールをインポートする
index 文字列中に部分文字列が最初に現れる位置を返す
int 整数部分を返す 
ioctl デバイスの制御を行う
join 区切り文字をはさんで文字列を連結する
keys ハッシュ内のすべてのキーのリストを返す
kill プロセスにシグナルを送る
last 指定したループから抜け出す
lc 文字列を小文字に変換する
lcfirst 先頭の一文字を小文字に変換する
length 文字列の長さを返す
link ファイルのハードリンクを作成する
listen ソケットの接続を待つ
local 変数をローカル変数にする
localtime time関数形式の時間をローカル時間に変換する
log e(自然対数) を底とする対数を返す 
lstat ファイル情報を返す
m// パターンにマッチする文字列を検索する
map 配列やハッシュを評価して結果を返す
mkdir ディレクトリを作成する 
msgctl System V IPCのmsgctlを実行し、メッセージキューの削除などの制御を行なう 
msgget System V IPCのmsggetを実行し、メッセージキューを作成する
msgrcv System V IPCのmsgrcvを実行し、メッセージキューからメッセージを受信する
msgsnd System V IPCのmsgsndを実行し、メッセージキューにメッセージを送信する
my 変数をローカル変数にする
next 次のループにジャンプする
no モジュールの機能をキャンセルする
oct 8進数/16進数を10進数に変換する
open ファイルをオープンする
opendir ディレクトリをオープンする 
ord 先頭文字の文字コードを返す
our グローバル変数を宣言する
pack リスト値をバイナリ構造体に変換する
package 引数の名前空間に属することを宣言する
pipe プロセスをパイプで接続する
pop 配列の末尾の要素を切り取る
pos 前回のm//gが終了した位置を返す
print ファイルハンドルに対してリスト値を出力する
printf フォーマットした文字列を出力する
prototype プロトタイプを調べる
push 配列の末尾に要素を追加する 
q// シングル・クオートされた文字列を示す
qq// ダブル・クオートされた文字列を示す
qr//  
quotemeta メタ文字の前にバックスラッシュを挿入する
qw// 空白を区切り文字として抜き出す
qx// コマンドとして実行される文字列を示す
rand 0 から指定した数までの乱数を発生する
read ファイルからデータを読み込み変数に格納する
readdir 次のディレクトリ・エントリを返す
readline 型グロブの付いたファイルハンドルから読みこむ
readlink シンボリックリンクが指しているファイルを返す 
readpipe システムコマンドを実行し、その標準出力を返す
recv ソケットからメッセージを受け取る 
redo ループの最初にジャンプする
ref 型がリファレンスかどうか返す
rename ファイル名を変更する
require ファイルを読み込んで実行する
reset 変数を未定義状態にする
return 呼び出し元のプログラムへ戻り、任意の値を返す
reverse リスト値を逆順に並び替える 
rewinddir ディレクトリハンドルの読み取り位置を最初のエントリに設定する
rindex 最後に見つかった指定文字列の位置を返す 
rmdir ディレクトリを削除する
s/// 文字列中の特定パターンを置換する
scalar 値をスカラコンテキストで評価する
seek ファイルポインタ任意の位置に設定する
seekdir ディレクトリハンドルの読み取り位置を指定した位置に設定する 
select ファイル記述子のステータスを調べる
semctl System V IPCのsemctlを実行し、セマフォを制御する 
semget System V IPCのsemgetを実行し、セマフォを作成/セマフォIDを返す
semop System V IPCのsemopを実行し、セマフォを操作する
send ソケットへメッセージを送信する
setpgrp プロセスのプロセスグループを取得・設定する 
setpriority プライオリティを設定する 
setprotoent @@プロトコル情報のエントリを最初に戻す
setsockopt ソケット・オプションを設定する
shift 配列の先頭の要素を取り除く 
shmctl System V IPCのshmctlを実行し、共有メモリを操作する 
shmget System V IPCのshmgetを実行し、共有メモリセグメントを返す
shmread System V IPCのshmreadを実行し、共有メモリセグメントからデータを読み出す 
shmwrite System V IPCのsemctlを実行し、共有メモリセグメントにデータを書き込む
shutdown ソケット接続をシャットダウンする
sin サイン(正弦)を返す 
sleep 実行中のスクリプトをスリープさせる 
socket ソケットをオープンする
socketpair ソケットのペアを生成する
sort リストの並べ替えを行なう 
splice 配列要素の削除・挿入を行う
split 文字列を配列に分割する
sprintf 書式指定文字列に従って整形した文字列を返す
sqrt 平方根を返す 
srand randのシード値を設定する
stat ファイル情報を返す
study パターンを記録する
substr 文字列から指定した部分を取り出す/置換する
sub 関数宣言演算子
symlink シンボリック・リンクを作成する
syscall システム・コールを呼び出す 
sysopen モードとパーミッションを指定してファイルをオープンする
sysread ファイルからデータを読み込む
sysseek ファイルシステムの読み込み/書き込み位置を設定/取得する
system システムに移行しコマンドを実行する
syswrite データを書き込む
tell 現在のファイル位置を返す
telldir ディレクトリ・エントリを返す
tie 変数とパッケージの結び付けを制御する
tied 変数との結び付けを制御する
time 現在の日付・時刻データを返す
times プロセスのユーザー時間、システム時間を返す 
tr 文字列の置換を行う
truncate ファイルサイズを指定した大きさに切り詰める
uc 文字列を大文字に変換する
ucfirst 先頭の1文字を大文字に変換する
umask umask値を取得/設定する 
undef 変数などを未定義にする/未定義値を返す
unlink ファイルを削除する 
unpack バイナリ構造体にパックされたデータをリスト値に展開する
unshift 配列の先頭に要素を追加する 
untie 変数との結び付けを制御する
use モジュールをインポートする
utime ファイルのアクセス時刻/更新時刻を設定する 
values ハッシュ内のすべての値のリスト値を取り出す 
vec 整数のベクタを表す文字列から、指定した位置の値を取り出す 
wait 子プロセスの終了を待つ
waitpid 指定した子プロセスの終了を待つ
wantarray サブルーチンの呼び出し元のコンテキストを判定する
warn STDERRに警告メッセージを出力する
write 整形されたレコードを出力する
y/// 文字列の置換を行う

カテゴリ別のPerl関数一覧

Perlの関数、および関数風のキーワードを、カテゴリに分類しました。

スカラ処理
chomp,
chop,
crypt,
hex,
index,
lc,
lcfirst,
length,
oct,
ord
, pack,
q//,
reverse,
rindex,
scalar,
sprintf,
substr
uc,
ucfirst,
y///
正規表現とパターンマッチ
m//,
pos, qr//,
quotemeta,
s///,
split,
study
数学関数
abs,
atan2,
cos,
exp
, hex,
int,
log
, oct,
rand,
sin,
sqrt,
srand
配列処理
pop,
push,
shift,
splice,
unshift
リスト処理
grep,
join,
map,
qw//,
reverse,
sort,
unpack
ハッシュ処理
delete,
each,
exists,
keys,
values
入出力
binmode,
close,
closedir,
dbmclose,
dbmopen,
die,
eof
, fileno,
flock, format,
getc,
print,
printf,
read,
readdir,
rewinddir,
seek,
seekdir,
select,
syscall,
sysread, sysseek,
syswrite,
tell,
telldir,
truncate,
warn,
write
固定長データとレコード
pack,
read,
syscall,
sysread,
syswrite,
unpack,
vec
ファイルハンドル、ファイル、ディレクトリ
chdir,
chmod,
chown,
chroot,
fcntl,
glob,
ioctl,
link,
lstat,
mkdir,
open,
opendir,
readlink,
rename,
rmdir,
stat,
symlink,
sysopen,
umask,
unlink,
utime
プログラムの流れの制御
caller, continue,
die, do, dump,
eval,
exit,
goto,
last,
next,
redo,
return,
sub,
wantarray
スコープ
caller,
import,
local, my,
package,
use
その他
defined,
dump, fork,
getpgrp, getppid,
getpriority,
kill,
pipe, qx//,
setpgrp,
setpriority,
sleep,
system, times,
undef, wait,
waitpid
ライブラリモジュール
do, import,
no, package,
require, use
クラスとオブジェクト
bless, dbmclose,
dbmopen, package, ref,
tie, tied,
untie, use
低レベルソケットアクセス
accept,
bind,
connect,
getpeername,
getsockname,
getsockopt, listen,
recv, send,
setsockopt,
shutdown,
socket,
socketpair
System Vのプロセス間通信
msgctl, msgget,
msgrcv, msgsnd,
semctl,
semget,
semop,
shmctl, shmget,
shmread, shmwrite
ユーザ情報とグループ情報の取得
endgrent, endhostent, endnetent, endpwent,
getgrent, getgrgid, getgrnam,
getlogin, getpwent,
getpwnam, getpwuid, setgrent, setpwent
ネットワーク情報の取得
endprotoent, endservent, gethostbyaddr,
gethostbyname, gethostent,
getnetbyaddr,
getnetbyname, getnetent,
getprotobyname,
getprotobynumber, getrotoent,
getservbyname,
getservbyport, getservent, sethostent, setnetent,
setprotoent, setservent
時間
gmtime,
localtime, time,
times

移植性

下記の組込み関数は、非UNIX環境で機能の制限、もしくは使えない可能性があります。

-X / binmode / chmod /
chown / chroot / crypt /
dbmclose / dbmopen / dump /
endgrent / endhostent / endnetent
/ endprotoent / endpwent / endservent
/ exec / fcntl / flock /
fork / getgrent / getgrgid /
gethostent / getlogin / getnetbyaddr
/ getnetbyname / getnetent / getppid
/ getprgp / getpriority / getprotobynumber
/ getprotoent / getpwent / getpwnam
/ getpwuid / getservbyport / getservent
/ getsockopt / glob / ioctl /
kill / link / lstat / msgctl
/ msgget / msgrcv / msgsnd /
open / pipe / readlink /
rename / select / semctl /
semget / semop / setgrent /
sethostent / setnetent / setpgrp
/ setpriority / setprotoent / setpwent
/ setservent / setsockopt / shmctl
/ shmget / shmread / shmwrite
/ socket / socketpair / stat
/ symlink / syscall / sysopen
/ system / times / truncate /
umask / unlink / utime /
wait / waitpid

Perl5で新しく導入された関数

abs / bless / chomp /
chr / exists / formline /
glob / import / lc / lcfirst
/ map / my / no / prototype
/ qx / qw / readline / readpipe
/ ref / sub* / sysopen /
tie / tied / uc / ucfirst
/ untie / use

※subは、Perl4でキーワードの扱いでしたが、Perl5で演算子となりました

Win32システム用Perlで実装されていない関数

alarm / chroot / endgrent
/ endhostent / endnetent / endprotoent
/ endpwent / endservent / fork
/ getgrent / getgrgid / getgrnam
/ getnetbyaddr / getnetbyname / getnetent
/ getpgrp / getppid / getpriority
/ getprotoent / getpwent / getpwnam
/ getpwuid / getservent / link
/ msgctl / msgget / msgrcv /
msgsnd / semctl / semget /
semop / setgrent / sethostent
/ setnetent / setpgrp / setpriority
/ setprotoent / setpwent / setservent
/ shmctl / shmget / shmread /
shmwrite / socketpair / symlink
/ syscall

Macシステム用Perlで実装されていない関数

binmode / chown / chroot /
dump / exec / flock / fork
/ getlogin / getpgrp / getppid
/ getpriority / getpwnam / getgrnam
/ getnetbyname / getpwuid / getgrgid
/ getnetbyaddr / getprotobynumber / getservbyport
/ getpwent / getgrent / gethostent
/ getnetent / getprotoent / setpwent
/ setgrent / sethostent / setnetent
/ setprotoent / endpwent / endgrent
/ endhostent / endnetent / endprotoent
/ getsockopt / kill / link /
msgctl / msgget / msgsnd /
msgrcv / pipe / semctl /
semget / semop / setpgrp /
setpriority / setsockopt / shmctl
/ shmget / shmread / shmwrite
/ socketpair / stat / stat /
waitpid

Perl5で旧式になった関数

dbmclose / dbmopen

関連記事