如何查看Archive::Tar的写入是否成功?
How to check if Archive::Tar's write is successful?
我有上个月的月度脚本 运行 存档文件。我正在使用 Archive::Tar
生成存档。如何检查对 ->write
方法的调用是否成功?
以下是否有效?我还没有成功 $tar->write()
。
unless ($tar->write( $name . '.tar.xz', COMPRESS_XZ )) {
die("cant write tar"); # or any other doings instead
}
是的,您问题中的代码将捕获 ->write
内的任何错误。
Archive::Tar
的文档没有指定 write
的 return 值是什么(除非没有提供参数,这里不是这种情况)。但是,在错误的情况下查看 the code of the module、write
returns undef
,在成功的情况下查看真值:
注意,如果出现问题,Archive::Tar
returns undef
,那么它也会打印错误信息(除非你将$Archive::Tar::WARN
设置为0
通过 $Archive::Tar::WARN = 0
)。如果您想根据错误执行特定操作,可以使用 ->error
方法访问错误消息。
我有上个月的月度脚本 运行 存档文件。我正在使用 Archive::Tar
生成存档。如何检查对 ->write
方法的调用是否成功?
以下是否有效?我还没有成功 $tar->write()
。
unless ($tar->write( $name . '.tar.xz', COMPRESS_XZ )) {
die("cant write tar"); # or any other doings instead
}
是的,您问题中的代码将捕获 ->write
内的任何错误。
Archive::Tar
的文档没有指定 write
的 return 值是什么(除非没有提供参数,这里不是这种情况)。但是,在错误的情况下查看 the code of the module、write
returns undef
,在成功的情况下查看真值:
注意,如果出现问题,Archive::Tar
returns undef
,那么它也会打印错误信息(除非你将$Archive::Tar::WARN
设置为0
通过 $Archive::Tar::WARN = 0
)。如果您想根据错误执行特定操作,可以使用 ->error
方法访问错误消息。