这个问题不太可能帮助任何 future 的访客;它只与一个小地理区域、一个特定时刻或一个非常狭窄的情况相关,而这些情况通常不适用于互联网的全局受众。如需帮助使这个问题更广泛地适用,visit the help center .
9年前关闭。
我想创建 BASH 文件以使用 while 创建 50 个用户。
但是当我运行它时遇到了一些问题。
limite=51
num=1
while [$numero != $limite]
do
echo -n 'enter your name: ' "$num" ; read name
sudo useradd $name
num=$(($num + 1))
done
问题来自第 1 行和第 4 行
不知道为什么!?
好吧,我有这个,它有效
limite=51
num=1
while [ $num != $limite ] ; do
echo -n 'enter your name: ' "$num" ; read name
sudo useradd $name
num=$(($num + 1))
done
谢谢你
最佳答案
使用 bash 成语,你的脚本最好写成
limite=51
for ((num=1;num<limite;++num)); do
read -p "enter your name: $num" name
sudo useradd "$name"
done
或者更好(它会更快):在一个文件中输入所有用户名,比如
user.txt
,每行一个名称,然后运行while read name; do sudo useradd "$name"; done < user.txt
关于使用 `while` 和数字关系测试的 BASH 脚本错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13969100/