0
df = subprocess.Popen(["df", options.partname], stdout=subprocess.PIPE)
output = df.communicate()[0]
print output
給出如下:Python的拆分和合並行
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/sys-scratch
1446412616 847216452 524555652 62% /scratch
在某些情況下(機),
output.split("\n")[1]
給我
/dev/mapper/sys-scratch
那裏,因爲我想
/dev/mapper/sys-scratch 1446412616 847216452 524555652 62% /scratch # in one line
我使用的值在這樣的輸出:
device, size, used, available, percent, mountpoint = output.split("\n")[1].split()
對於一些機器,這將失敗,因爲output.split("\n")[1]
只有一個值。我怎樣才能解決這個問題 ?
它看起來像一個新行插入,以適應更長的文件系統的名稱。 – 2013-04-05 16:09:02
你需要哪些信息? 'df'不是爲腳本解析而設計的;有更好的方法來獲取磁盤信息。 – 2013-04-05 16:10:36
**其他**答案[查找包含給定文件的文件系統的大小和可用空間](http://stackoverflow.com/q/4260116)實際上比使用'df'好。 – 2013-04-05 16:11:44