python echo用法_Python提示用户使用echo和密码,不使用ech

还有另一种选择,我发现有文档记录的here。检测输入流是否为TTY,并根据该信息更改输入方法。

我用了这样的东西:#!/usr/bin/python

import sys

import getpass

if sys.stdin.isatty():

print "Enter credentials"

username = raw_input("Username: ")

password = getpass.getpass("Password: ")

else:

username = sys.stdin.readline().rstrip()

password = sys.stdin.readline().rstrip()

print "Username: [%s], password [%s]" % (username, password)

这在终端上运行良好:bash> ./mytest.py

Enter credentials

Username: one

Password:

Username: [one], password [two]

对于管道输入:bash> echo "one

> two" | ./mytest.py

Username: [one], password [two]

对于文件输入:bash> echo "one" > input

bash> echo "two" >> input

bash> ./mytest.py < input

Username: [one], password [two]

对于遗传性卵巢癌:bash> ./mytest.py << EOF

> one

> two

> EOF

Username: [one], password [two]

就我个人而言,这涵盖了我所有的需要。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值