素材牛VIP会员
Python String
 熊***子  分类:Python  人气:840  回帖:2  发布于6年前 收藏
import commands
value,result=commands.getstatusoutput('df -h')
print result

Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LVroot
                       16G   15G  331M  98% /
/dev/mapper/VolGroup00-LVtmp
                      6.4G  591M  5.5G  10% /tmp
/dev/mapper/VolGroup00-LVvar
                       28G  1.2G   25G   5% /var
/dev/mapper/VolGroup00-LVhome
                      450M  228M  199M  54% /home
/dev/sda1              99M   40M   55M  42% /boot
tmpfs                 1.9G     0  1.9G   0% /dev/shm

result

'Filesystem            Size  Used Avail Use% Mounted on\n/dev/mapper/VolGroup00-LVroot\n                       16G   15G  331M  98% /\n/dev/mapper/VolGroup00-LVtmp\n                      6.4G  591M  5.5G  10% /tmp\n/dev/mapper/VolGroup00-LVvar\n                       28G  1.2G   25G   5% /var\n/dev/mapper/VolGroup00-LVhome\n                      450M  228M  199M  54% /home\n/dev/sda1              99M   40M   55M  42% /boot\ntmpfs                 1.9G     0  1.9G   0% /dev/shm\n

这里我有个疑问!
变量result得到的是一串字符串!
如果我只想取其中某一行该怎么办?

我现在使用的方法是先将result放到一个文件中,在通过readlines()这个方法就能获得一行一行的了....

但感觉这个比较蠢... 有更好的方法吗?

 标签:python

讨论这个帖子(2)垃圾回帖将一律封号处理……

Lv6 码匠
风***Q 产品经理 6年前#1

string有个splitlines方法
用这个直接在内存中把数据按行进行分割了

Lv7 码师
un***oo 职业无 6年前#2

首先 commands 是已经被废弃的库了,应该用 subprocess

然后通过设置 stdout=subprocess.PIPE,你可以像读文件一样读输出,自然也支持 readline

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取