课程
/运维&测试
/Linux
/shell编程之条件判断与流程控制
echo $pass | /usr/bin/passwd -- stdin $name$i 大家帮忙解释一下这句。主要是管道符 | 和 --stdin $name$i 的顺序 谢谢!
2016-01-06
源自:shell编程之条件判断与流程控制 6-2
正在回答
我尝试了一下,在Ubuntu下passwd命令是不支持 --stdin 参数的,查下资料说在debian上就不再支持了,不知道你的是不是Ubuntu系统呢?
我尝试了在CentOS上没有问题,当然Ubuntu上可以通过下面的命令代替:
echo "$name$i:$pass" | chpasswd &> /dev/null
dearestx 提问者
iliul 回复 dearestx 提问者
然后应该怎么执行呢?抱歉我还是有点看不懂啊。
设置密码的时候不能成功设置;但是用户已经创建了~
系统版本,定义的变量,执行视频中的语句,执行结果用户并没有添加成功
http://serverfault.com/questions/336298/can-i-change-a-user-password-in-linux-from-the-command-line-with-no-interactivit
http://www.imooc.com/video/7968中
无法成功执行此句!
如果
/usr/bin/passwd -- stdin $name$i
这样写,--叫做选项结束符,好像是这个意思,代表命令选项到此结束,来个例子。
root@iliul-PC:~# mkdir -- -l root@iliul-PC:~# mkdir -l mkdir:无效选项 -- l Try 'mkdir --help' for more information. root@iliul-PC:~#
如果不加 -- 就会把-l当做option
没有看懂后面
-- stdin $name$i
这段,补充完整吧,包括这几个参数,管道符号 | 前面的命令结果会作为后面的输入,也就是
echo $pass
的结果。
举报
Linux shell实用案例学习,一定会使你Linux运维能力再次提高
2 回答谁能解释下下面的输出,为什么是yes?
1 回答学这个之前要先了解啥啊
2 回答输入错误后,直接退出登录了,求解
2 回答谁来帮我解答一下这段代码有什么问题
1 回答不知道怎么回事老说我第14行有错,看半天看不出来,怎么解决啊