2017-08-03 38 views
0

虽然为什么login命令不接受管道标准输入?

echo pwd | bash -i 

工作

echo pwd | login -f root 

不起作用。我期望登录命令设置一些环境变量并启动一个交互式shell,但显然它是特殊的。

login命令做了什么,因此上述示例不起作用?是否有任何可以用于这种方式的登录命令的替代品?

回答

0

登录命令在工作之前检查它是否连接到tty。这里回答https://stackoverflow.com/a/1402389/3235192

echo pwd | script -qc "login -f root" /dev/null 

与定界符,也适用此您可以模拟的脚本命令的tty。

script -qc "login -f root" /dev/null << EOF 
pwd 
EOF 
相关问题