如果我的gz文件不存在,为什么不DIE呢?
$ cat test.pl
open(FILE, "zcat dummy.gz |") or die "DIE";
$ ./test.pl
zcat: dummy.gz: No such file or directory
Run Code Online (Sandbox Code Playgroud)
如果我正常读取文件,它按预期工作:
$ cat test2.pl
open(FILE, "dummy.gz") or die "DIE";
$ ./test2.pl
DIE at ./test.pl line 2.
Run Code Online (Sandbox Code Playgroud)
你的open成功(因为它成功运行zcat),zcat在关闭文件描述符之前,你不会得到退出代码.
您可能想要在开始之前检查文件是否存在且可读,例如.
die "unable to read file" unless (-f "dummy.gz" and -r "dummy.gz")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1567 次 |
| 最近记录: |