问一个初学的问题,照着抄了一份shell脚本,bash出了问题,一直找不到问题,求教

蓝天绿地白云 2019-06-17 10:05:47
脚本代码
#!/bin/bash
read -p "Enter The Users Password:" PASSWD\
for UNAME in `cat users.txt`
do
id $UNANME &> /dev/null
if [ $? -eq 0 ]
then
echo "Already Exists"
else
useradd $UNAME &> /dev/null
echo "$PASSWD" | passwd --stdin $UNAME &> /dev/null
if [ $? -eq 0 ]
then
echo "$UNAME is Create success"
else
echo "$UNAME is Create failure"
fi
fi
done
————————————————————————————————————————————————————————
报错“haha.sh: line 4: syntax error near unexpected token `do'
...全文
244 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
蓝天绿地白云 2019-06-24
  • 打赏
  • 举报
回复
引用 4 楼 苦芥 的回复:
users.txt有了么?在同一个目录下么
是的
蓝天绿地白云 2019-06-24
  • 打赏
  • 举报
回复
引用 6 楼 Empty_city_dreams 的回复:
你这个脚本问题很大啊,三个地方有问题 我标的黄色圈圈拳师有问题的地方,你大概是直接复制的吧,大概是windows和linux的格式不同导致的 我修改后的就没有任何问题,手动吧这三个判断重写,别复制,手动重写,正常来说for 和if 这两个字段应该是和then或者echo字段的颜色是一样的,而不是初始的颜色,你这大概就是windows复制过来的问题
谢谢哦,我是手打的,重新写了一遍,成功了
Empty_city_dreams 2019-06-19
  • 打赏
  • 举报
回复
你这个脚本问题很大啊,三个地方有问题 我标的黄色圈圈拳师有问题的地方,你大概是直接复制的吧,大概是windows和linux的格式不同导致的 我修改后的就没有任何问题,手动吧这三个判断重写,别复制,手动重写,正常来说for 和if 这两个字段应该是和then或者echo字段的颜色是一样的,而不是初始的颜色,你这大概就是windows复制过来的问题
mouse_zhu 2019-06-18
  • 打赏
  • 举报
回复
这个脚本我复制过来可以直接用
mouse_zhu 2019-06-18
  • 打赏
  • 举报
回复
能回答的技术点不?没有这个文件会报这样的错吗
苦芥 2019-06-18
  • 打赏
  • 举报
回复
users.txt有了么?在同一个目录下么
蓝天绿地白云 2019-06-17
  • 打赏
  • 举报
回复
没有^M哦,我查过百度很多说这个问题,但是我的没有啊
mouse_zhu 2019-06-17
  • 打赏
  • 举报
回复
感觉有其他字符。比如^M

18,771

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 专题技术讨论区
社区管理员
  • 专题技术讨论区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧