首页 > 解决方案 > 从 Perl 的文件中读取单个数字

问题描述

如何以更好的方式从文件中读取 PID 号?

一个名为的文件pid包含当前进程的 PID 或一个 0;

我想从变量中的文件中读取它,我提供了最长的解决方案:

open my $fh, '<', 'pid';
my $line = <$fh>;
close $fh;

chomp $line;
my $pid = 0+ $line;

say $pid;

有没有更优雅的解决方案?

标签: perl

解决方案


我喜欢Path::Tiny做这样的事情。

use Path::Tiny;

chomp(my $pid = path('pid')->slurp);

或者

use Path::Tiny;

my ($pid) = path('pid')->lines({ chomp => 1, count => 1 });

我不确定您为什么要强制文件为数字。你不相信文件的内容吗?


推荐阅读