python 脚本错误消息 'unknown column' - Redhat

python script error message 'unknown column' - Redhat

我的 Python 脚本在 redhat 8.5 python 3.6.8 上产生 unknown column 错误。 但是在 Ubuntu 20.04 和 python 3.8.10

上工作没有问题

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

Link 到完整脚本 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'3[{code}m'

if __name__=='__main__':
      main()

Redhat 错误信息

Ubuntu输出

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

必须克隆此存储库 https://github.com/util-linux/util-linux.git

然后按照这里 how-to 找到的。

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

lsblk --version
lsblk from util-linux 2.38.141-581b1