在下一个命令之间获取输出可能有任何不同:
lsof_list = commands.getoutput('lsof | awk \'{print $1,$2,$5}\')
或:
lsof_list1 = commands.getoutput('lsof | awk \'{print $1}\')
lsof_list2 = commands.getoutput('lsof | awk \'{print $2}\')
lsof_list5 = commands.getoutput('lsof | awk \'{print $5}\')
lsof_list = [lsof_list1, lsof_list2, lsof_list5]
当然,行将成为列,反之亦然,但我主要怀疑的是数据,可能在代码工作期间会有不同数量的打开文件?
可以肯定的是,是否有任何函数可以同时在Python中执行少量命令?
答案 0 :(得分:1)
是的,输出可能会有所不同。在第一种情况下,您只执行lsof
一次,然后从lsof
输出中捕获值,但在第二种情况下lsof
执行3次,这可能会导致不同的输出。