Bash:语法错误:Ubuntu 中出现 "("意外问题

标签 bash ubuntu

我是 Bash 脚本方面的新手。在第 2 行收到语法错误。但是,不确定是什么问题。帮助表示赞赏。谢谢!

#!/bin/bash

# Prints userlist, add users to system, add users to wheel group, and sets password.

userlist=(john mary dan jenna gary)
for i in {$userlist[@]}
do 
echo ${userlist[@]}
 sudo useradd ${userlist[@]}
 usermod -aG wheel ${userlist[@]}
 passwd ${userlist[@]}
done 

最佳答案

你有一个错字:

for i in {$userlist[@]}

应该:
for i in ${userlist[@]}

由于userlist是一个数组,$userlist扩展到第一个元素 john , 所以 {$userlist[@]}变成 {john[@]}这不是你想要的,大概。

此外,在 for 循环中,您应该使用 $i引用 $userlist 中的每个元素大批。

关于Bash:语法错误:Ubuntu 中出现 "("意外问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52675037/

相关文章:

linux - 确保 .csv 文件在 bash 中每一行的列数相同

bash - 什么是 ls -F (ls --classify)

ruby - 无法在 Ubuntu 中安装 therubyracer-heroku

java - .bashrc 在设置 $JAVA_HOME PATH 后出错

bash - 如何使用 "ls"而不是整个目录内容获取目录条目的日期?

linux - 在 bash 中链接多个 chflags

mysql - Ubuntu 服务器端口 3306 在启动时已经在监听

mongodb - 无法在 ubuntu 18.04 LTS 上正确安装 mongodb

python - 如何在 VS 代码 Debug模式下设置断点和命令行参数?

java - stat 返回 `No such file or directory` ,在 java exec 下运行