首页 > 解决方案 > 使用子进程模块时如何更改目录

问题描述

我正在使用 Ubuntu,并且正在使用 subprocess 模块运行命令。我正在尝试查找密码可以使用的最大天数。

import subprocess

pass_max = subprocess.check_output('grep PASS_MAX_DAYS /etc/login.defs')
print(pass_max)

运行此代码后,我收到错误没有这样的文件或目录。我如何才能找到密码可以使用的最大天数?

标签: python

解决方案


check_output期望命令作为列表:

subprocess.check_output(['grep', 'PASS_MAX_DAYS', '/etc/login.defs'])

另一种是通过shell=True,考虑到安全性考虑

subprocess.check_output('grep PASS_MAX_DAYS /etc/login.defs', shell=True)

推荐阅读