开发者问题收集

python 脚本错误消息‘未知列’-Redhat

2022-05-08
78

我的 Python 脚本在 redhat 8.5 python 3.6.8 上产生 未知列 错误。 但在使用 python 3.8.10 的 Ubuntu 20.04 上正常运行

这是 python 还是 redhat 的问题?是否可以收集更详细的日志?

完整脚本链接 https://github.com/michael-pellegrini/scripts/blob/master/xtime.py

#!/usr/bin/env python3
import subprocess, re, os

def main():
  storage()

def storage():
  output = str.splitlines(os.fsdecode(subprocess.check_output(['lsblk', '-fm', '-o' 'NAME,' 'FSTYPE,' 'FSAVAIL,' 'FSUSE%,' 'MOUNTPOINT,' 'SIZE,' 'OWNER,' 'GROUP,' 'MODE', '-e 7'])))
  print(esc('1;93') + " List of drives, partitions, and details" + esc(0))
  for line in output:
    print(" " + line)
  print('')

def esc(code):
  return f'\033[{code}m'

if __name__=='__main__':
      main()

Redhat 错误消息 在此处输入图像描述

Ubuntu 输出 在此处输入图像描述

2个回答

答案在@larsks 的评论中。 lsblk 版本 2.32.1 vs 2.34

m0ng00se
2022-05-10

必须克隆此 repo https://github.com/util-linux/util-linux.git

然后按照此处的操作方法操作。

https://github.com/util-linux/util-linux/blob/next/Documentation/howto-compilation.txt

lsblk --version
lsblk from util-linux 2.38.141-581b1
m0ng00se
2022-05-21