1
Je suis totalement nouveau à l'écriture de code avec shell script
.Bash Shell Erreurs de script: redirection ambiguë et opérateur unaire attendu
Ceci est mon code:
#!/bin/bash
echo -n "Output to $2 "
# set counter
count=1
# zap output file
> $2
# Loop
while [ $count -le $1 ]
do
# generate some random text
randomnumber=`od -A n -t d -N 1 /dev/urandom`
randomtext=`cat /dev/urandom | tr -cd "[:alnum:]" | head -c $randomnumber`
# generate a random number
randomnumber=`od -A n -t d -N 1 /dev/urandom`
# output to file
echo "$count,$randomtext,$randomnumber" | sed -e "s: *::g" >> $2
# increment counter
count=$(($count + 1))
if [ $(($count % 500)) -eq 0 ]
then
echo -n "." fi
done
echo " Output complete"
Et ceci est mon erreur:
Line 2: ambiguous redirect and Line 14: unary operator expected.
Quelqu'un peut-il me aider à comprendre pourquoi j'avoir cette erreur?
Les numéros de ligne ne sont pas alignés sur le code. Corrigez s'il vous plaît. –
Il semble que vous ayez besoin de valider la saisie de l'utilisateur. Est-ce que 2 arguments ont été fournis? –
Lisez attentivement [Implications pour la sécurité de l'oubli d'une variable dans les shells bash/POSIX] (https://unix.stackexchange.com/q/171346/4667) –