linux – 在python中获取变量中的ntpdate偏移值
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了linux – 在python中获取变量中的ntpdate偏移值,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1455字,纯文字阅读大概需要3分钟。
内容图文
![linux – 在python中获取变量中的ntpdate偏移值](/upload/InfoBanner/zyjiaocheng/956/865fcddde0514ed8a75888bd0c1da414.jpg)
我想检查偏移时间是否大于0.5秒并做一些动作.
我正在运行命令ntpdate -q< Server ip address>
有人能告诉我如何捕获变量中的偏移值,以便我可以执行进一步的操作?
解决方法:
解
import subprocess
output = subprocess.check_output('ntpdate -q 3.us.pool.ntp.org | head -1 | cut -d " " -f 6 | sed "s/.$//"', shell=True)
您可以将“3.us.pool.ntp.org”服务器名称更改为您选择的NTP服务器.
使用此方法,输出变量将仅包含ntpdate命令输出的第一行中指定的偏移量,您可以使用该数字后执行所需的操作.
if output > X:
do something...
说明
你已经知道ntpdate的作用(清楚),所以你会知道它返回的输出有很多无用的信息,你正在尝试做什么.
> Subprocess允许您从python脚本中运行bash命令
> check_output与锡上的内容完全相同,在这种情况下,将其存储在输出变量中.
>如果像我在我的例子中那样使用一个池,那么head -1只需要取ntpdate输出的顶行(各种结果不应该变化很大,所以顶部应该没问题).
> cut将线条视为由空格字符分隔的字段.它排序并挑出第6个字段,即偏移值.
> sed从该值中删除最后一个字符,这是一个逗号,并且会破坏您为实际使用该值而进行的任何尝试.
> shell = True调用shell来执行契约.
~~~~~~~~~编辑~~~~~~~~~~~
我也没有代表发表评论,哈.你能告诉我服务器运行的是哪个版本的python @Iram Khan吗?
python -V
我怀疑它是一个版本< 2.7就像添加check_output功能时那样.在这种情况下,您可能需要将上述内容更改为:
import subprocess
cmd = "ntpdate -q 3.us.pool.ntp.org | head -1 | cut -d ' ' -f 6 | sed 's/.$//'"
ps = subprocess.Popen(cmd,shell=True,stdout=subprocess.PIPE,stderr=subprocess.STDOUT)
output = ps.communicate()[0]
如果check_output不起作用,这应该这样做.
内容总结
以上是互联网集市为您收集整理的linux – 在python中获取变量中的ntpdate偏移值全部内容,希望文章能够帮你解决linux – 在python中获取变量中的ntpdate偏移值所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。