Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 从文件添加用户帐户脚本错误_Linux_Bash - Fatal编程技术网

Linux 从文件添加用户帐户脚本错误

Linux 从文件添加用户帐户脚本错误,linux,bash,Linux,Bash,可能重复: 需要从excel电子表格创建用户,在第8行和第13行的脚本中出现一些错误 第8行查找匹配项时出现意外EOF` 第13行语法错误文件意外结束 #!bin/bash echo $(pwd)/employeesdata.xls Path=$($pwd)/employeesdata.xls read Path if [ -e $Path ]; then Username= [ grep $(Username) $Path | cut -f1 -d `]' Password= [ grep

可能重复:

需要从excel电子表格创建用户,在第8行和第13行的脚本中出现一些错误

第8行查找匹配项时出现意外EOF` 第13行语法错误文件意外结束

#!bin/bash
echo $(pwd)/employeesdata.xls
Path=$($pwd)/employeesdata.xls
read Path
if [ -e $Path ];
then
Username= [ grep $(Username) $Path | cut -f1 -d `]'
Password= [ grep $(Password) $Path | cut -f2 -d `]'
useradd -- b $Username
echo $Password | /usr/bin/passwd --stdin $Username
fi
exit
Excel文件包含此信息和其他信息

Name (field1) EmployeeID (field2)    Phone             Address      
Joe Blow      22500033               156-454-3322       101 main

我认为您必须重构一些东西:

#!bin/bash
echo $(pwd)/employeesdata.xls
Path="$(pwd)/employeesdata.xls"
read Path
if [ -e "$Path" ]; then
    Username=$(grep "$Username" "$Path" | cut -f1 -d ' ')
    Password=$(grep "$Password" "$Path" | cut -f2 -d ' ')
    useradd -- b $Username
    echo "$Password" | /usr/bin/passwd --stdin "$Username"
fi
exit
请注意:

引用您分配给变量的值有时这不是必需的,但对于启动来说,它有助于避免一些问题 引用变量的用法,除非您知道自己在做什么。无需显式引用,变量可以为命令/函数生成各种参数。 $cmd执行命令cmd并用命令的输出替换它的出现。 $var或${var}将自身替换为名为var的变量的内容 引用$a,假设变量a包含字符串作为其内容,则生成字符串引用字符串。 “quoting$a”独立于变量a,生成quoting$a的字符串。 对于新手来说,它可能会令人困惑,[实际上是test命令的别名,可用于比较字符串、整数,并执行一些基本测试,如检查权限或文件是否存在。]实际上只是一个语法要求,用于通知命令调用时其参数已结束。 我以为你的分隔符是空格,但我可能错了。
希望这有点帮助=

这实际上是excel电子表格还是csv之类的文本格式。请将脚本缩减到所需的大小。看起来您正在设置路径,然后将其读入。感谢您没有多次交叉张贴格式错误的相同问题。这个脚本完全没有意义…我所要做的就是读取数据,导出以创建用户帐户,使用用户名作为用户名,然后使用employeeid作为密码。接下来我就要发电子邮件了。如果有人能帮助一个兄弟,那就太棒了。你希望得到什么帮助?你的剧本根本没有任何意义。Grepping xls文件和所有那些$Username的东西。。。你至少知道shell是如何工作的,从内部看xls文件是什么样子吗?+1用于painstook解释。不确定这个问题是否值得这样对待,但请继续发帖!祝大家好运。