在过去的 2 个小时里,我已经尝试了一切方法来使其正常工作,但我在 shell 和编程方面的经验有限。
我有一个循环
while IFS="," read var1 var2 var3 var4 var5 ; do
statements here...
done < $file
现在,语句内的操作是从具有 5 个字段的文本文件中读取数据,然后使用它们在 Linux 中使用 bash 创建帐户
useradd $var1 -p var2 -g var3
等等
我想让脚本只从第二行开始读取,但我无法让它工作。像 while ifs= 一样,读取(从第二行)var 1 var 2 var3 等。
原因是该文件是从 excel 导出到 csv 的数据库,因此第一行将包含诸如注册的名字等标题,并且不需要
感谢您的帮助
添加:
在创建用户之前,我添加了一条 if 语句,如果用户满足条件,则将创建他们。
if [ "$var5" == "fullyenrolled" ]; then
continue with account creation...
echo "$var1 successfuly created"
else
echo "Sorry user $var1 is not fully enrolled"
fi
echo 的输出类似于
Full name is not fully enrolled
user1 successfuly created
user2 successfuly created
即使我添加 sed 1d |而 IFS= 等等,似乎它仍在读取第一行,这就是为什么我得到第一个输出,如“全名未完全注册”