13.07.2015 Views

Perl 语言编程 - Linux教程

Perl 语言编程 - Linux教程

Perl 语言编程 - Linux教程

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

这 个 方 法 实 现 的 是 从 这 个 捆 绑 的 散 列 里 读 取 元 素 。 它 在 对 象 后 面 还 有 一 个 参 数 : 你 想 抓 取的 散 列 元 素 的 键 字 。 这 个 键 字 是 一 个 字 串 , 因 而 你 可 以 对 它 做 你 想 做 的 任 何 处 理 ( 和 字 串一 致 )。 下 面 是 我 们 DotFiles ? 例 子 的 抓 取 :sub FETCH {carp &whowasi if $DEBUG;my $self = shift;my $dot = shift;my $dir = $self->{HOME};my $file = "$dir/.$dot";unless (exists $self->{CONTENTS}->{$dot} || -f $file ) {carp "@{[&whowasi]}: no $dot file" if $DEBUG;return undef;}# 实 现 一 个 缓 冲if (defined $self->{CONTENTS}->{$dot} ) {return $self->{CONTENTS}->{$dot};} else {return $self->{CONTENTS}->{$dot} = `cat $dir/.$dot`;}}我 们 在 这 里 做 了 一 些 手 脚 : 我 们 用 的 是 Unix 的 cat (1) 命 令 , 不 过 这 样 打 开 文 件 的 移植 性 更 好 ( 而 且 更 高 效 )。 而 且 , 因 为 点 文 件 是 一 个 Unix 式 的 概 念 , 所 以 我 们 不 用 太 担心 。 或 者 是 不 应 该 太 担 心 。 或 者 ...371

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!