我有一些代码不起作用。它说,“没有这样的文件或目录”,并在第27行崩溃:Bash:虽然循环错误“没有这样的文件或目录”
while [ $i < $amount]
但我不知道为什么。任何人?
#!/bin/bash
#WWGEN Aleandro
small=$(echo "abcdefghijklmnopqrstuvwxyz")
big=$(echo "ABCDEFGHIJKLMNOPQRSTUVWXYZ")
C=$(echo "\"")
D=$(echo '!')
E=$(echo ",[email protected]#$%^&*()][{};:?-_+=")
F=$(echo "")
characters=$(echo $small$big$C$D$E$F)
while getopts ":cl:p:" opt; do
case "$opt" in
c) characters=$(echo $big$C$D$E$F);;
l) length=$OPTARG ;;
p) amount=$OPTARG ;;
esac
done
shift $((OPTIND - 1))
i=0
echo "amount: $amount"
echo "length: $length"
while [ $i < $amount]
do
echo "test"
echo $characters | sed 's/\(.\)/\1\n/g ' | sed 's/^$//g'| shuf -n $length | paste -sd ''
i=$[$i+1]
done
输出:
bash wwgen.sh -l 6 -p 5
amount: 5
length: 6
wwgen.sh: line 27: [: 0: binary operator expected
求购输出: 5与6这样长度的随机生成的密码。
bash wwgen.sh -l 6 -p 5
amount: 5
length: 6
69:AY
O7H;=
64]Z
]^NL!
(&NW5
由于运行[带参数的'$ i'和''命令]',重定向从'$ aantal'标准输入'。 – melpomene
将文字发布为文字,而不是文字图片。 – melpomene
更新,+英文代码 – Aleandro