日期:2014-05-16  浏览次数:20635 次

我写了个简单脚本总出错,谁帮我看一下吧
  1 #!/bin/bash
  2 # 此脚本用于批量新增账号,新增账号存放于纯文本文件中,文件名以参数形式传入
  3 # 一行一个账号名,密码与账号相同,强制设定第一次登录后修改密码
  4 if [ $# != 1 ]; then
  5         echo "必须输入账号文件"
  6         exit 1
  7 fi
  8 if [ ! -f $1 ]; then
  9         echo "账号文件不存在"
 10         exit 1
 11 fi
 12 cat $1
 13 usernames = $( cat $1 )
 14 for username in $usernames
 15 do
 16         useradd $username
 17         echo $username | passwd --stdin $username
 18         chage -d 0 $username
 19 done

错在第13行,报错找不到usernames这个命令。。。
脚本使用方法./脚本名 账号文件
账号文件必须已存在,且一行一个字符串表示用户名
脚本 linux shell script bash

------解决方案--------------------
usernames=`car $1`

------解决方案--------------------
#!/bin/bash
# 此脚本用于批量新增账号,新增账号存放于纯文本文件中,文件名以参数形式传入
# 一行一个账号名,密码与账号相同,强制设定第一次登录后修改密码
if [ $# != 1 ]; then
    echo "必须输入账号文件"
    exit 1
fi
if [ ! -f $1 ]; then
    echo "账号文件不存在"
    exit 1
fi
cat $1
for username in `cat $1`; do
    useradd $username
    echo $username 
------解决方案--------------------
 passwd --stdin $username
    chage -d 0 $username
done

------解决方案--------------------
shell的等号两边不能有空格
又或参见LS