Perl的“import *** 作系统”Python的equivelant?

Perl的“import *** 作系统”Python的equivelant?,第1张

概述Perl的“import *** 作系统”Python的equivelant?

我想从perl直接与linux进行连接,以执行一些调用,如statvfs。 我很好奇,如果有一种方法,只用核心perl包(没有额外的模块)。

特别是,我想获得没有安装/启用df的服务器的磁盘使用情况信息。

在打开terminal时自动运行命令(linux Mint 16)

如何检查命令是否可用?

cudaHostRegister是否等同于mlock()系统调用?

在/ proc / modules中加载模块的状态

find哪个MATLAB脚本在linux中运行

我想从perl直接与linux进行连接,以执行一些调用,如statvfs。 我很好奇,如果有一种方法,只用核心perl包(没有额外的模块)。

技术性的,但可能不是很有用的回答你的问题是,是的,确实存在一种方法来做什么statvfs只用核心Perl和没有模块。 它是这样工作的:

my $statfs_buffer = "" x length(pack($STATFS_TEMPLATE,())); my $retval = syscall($SYS_statfs,$some_filename,$statfs_buffer); if ($retval == -1) { dIE "statfs Failed: $!"; } my($f_type,$f_bsize,$f_blocks,$f_bfree,$f_bavail,$f_files,$f_ffree,$f_fsID,$f_namelen) = unpack($STATFS_TEMPLATE,$statfs_buffer);

问题是你必须找出$SYS_statfs和$STATFS_TEMPLATE的值; 前者容易,后者不难。

但是,在某些系统上,您将不得不使用这些的statfs64变体。

所以是的,只要你有足够的决心,就可以做你想做的事情。 不过,有更好的方法可以做到。

use POSIX; 想到。 但是statvfs不在其提供的功能之中。 也许你正在寻找use filesys::Df; 这里。

我还没有看到一个系统有Perl,但没有coreutils(DF)安装…

总结

以上是内存溢出为你收集整理的Perl的“import *** 作系统”Python的equivelant?全部内容,希望文章能够帮你解决Perl的“import *** 作系统”Python的equivelant?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1285607.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存