小编use*_*702的帖子

Linux Bash "|" 运营商不工作 - 我做错了什么?

我正在尝试通过这样的登录命令检查用户密码:

# echo "name\npassword" | login  
Run Code Online (Sandbox Code Playgroud)

但命令结束时没有写任何东西。echo由于 SIGPIPE 而结束。为什么login在要求名称和密码之前停止?

当我对passwd命令执行相同操作时,它可以工作:

# echo "password\npassword" | passwd  
Enter new UNIX password: 
Retype new UNIX password:
passwd: password updated successfully 
Run Code Online (Sandbox Code Playgroud)

我有 Ubuntu 12.04 和 Bash 4.2.25

linux bash bash-scripting

1
推荐指数
1
解决办法
215
查看次数

标签 统计

bash ×1

bash-scripting ×1

linux ×1