正在获取操作系统的用户输入



最近才开始学习Python,所以请原谅noob问题(一开始可能做得完全错误(

我正在尝试获得与os.system一起使用的用户输入

import os
account = input("Account name: ")
os.system("op get item + account + | awk -F':' '{print $24}' | cut -d '}' -f 1")

这行代码用于获取和显示1Password中的信息,并仅输出Facebook的密码就是这个例子,它有效,但只要我尝试添加变量,它就会破坏

op get item Facebook | awk -F':' '{print $24}' | cut -d '}' -f 1

我希望这里有人能帮助我或为我指明正确的方向,谢谢!

我认为您需要处理这些命令的输出,因此您可以使用子流程模块:替换Shell Pipeline

例如:

from subprocess import check_output
check_output(f"op get item {account} | awk -F':' '{{print $24}}' | cut -d '}}' -f 1", shell=True)

请注意,在接触系统调用之前,您希望清除帐户变量。:(

您只需要字符串替换,例如使用Python3.6+优雅的

os.system(f"op get item {account} | awk -F':'" + " '{print $24}' | cut -d '}' -f 1")

最新更新