glob.glob python,python globe

  glob.glob python,python globe

  现在我使用子流程调用find来完成工作,我想要一种Python风格的工作方式。

  这是当前代码:

  cmd= find/sys/devices/PCI * grep /net/

  p=subprocess.popen(cmd,stdout=subprocess。PIPE,shell=true).

  在输出中,会收到以下列表:

  [root @ host 1 ~]# find/sys/devices/PCI * grep /net/ grep address

  /sys/devices/PCI 0000336000/000033600336007.0/00000336004336000.0/00000336005336000.0/0000000033:00

  /sys/devices/PCI 0000336000/000033600336007.0/00000336004336000.0/00000336005336000.0/0000000033:00

  /sys/devices/PCI 0000336000/000033600336007.0/00000336004336000.0/00000336005336000.0/0000000033:00

  /sys/devices/PCI 0000336000/000033600336007.0/00000336004336000.0/00000336005336000.0/0000000033:00

  /sys/devices/PCI 0000336000/000033600336007.0/00000336004336000.0/00000336005336000.0/0000000033:00

  /sys/devices/PCI 0000336000/000033600336007.0/00000336004336000.0/00000336005336000.0/0000000033:00

  /sys/devices/PCI 0000336000/000033600336007.0/00000336004336000.0/00000336005336000.0/0000000033:00

  /sys/devices/PCI 0000336000/000033600336007.0/00000336004336000.0/00000336005336000.0/0000000033:00

  /sys/devices/PCI 0000336000/000033600336007.0/00000336004336000.0/00000336005336000.0/0000000033:00

  /sys/devices/PCI 0000336000/000033600336007.0/00000336004336000.0/00000336005336000.0/0000000033:00

  /sys/devices/PCI 0000336000/000033600336007.0/00000336004336000.0/00000336005336000.0/0000000033:00

  /sys/devices/PCI 0000336000/000033600336007.0/00000336004336000.0/00000336005336000.0/0000000033:00

  其中glob . glob((/sys/devices/PCI)/*/(()/*/net/)),将显示目录列表。

  我的问题是,如何重复简单的搜索行为?可以执行grep命令。或者,如果有更好的方法来搜索主机拥有的所有网卡的所有MAC,就可以发现它是否处于活动状态(在此查找特定的MAC模式)。

  编辑:你不应该用glob。Os.walk似乎已经完成了这项工作:

  对于root、dirs、namesinOS.walk(/sys/devices/):如果“地址”在名称中,而“PCI”在根目录中:f=打开(根/地址), r )。mac=f.readlines () [0]。strip)).f.close()。打印MAC。eth=root.split(/ ) [-1]。打印eth

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: