Comment transmettre correctement la ligne $ à la commande cut dans cette boucle ?
while read line
do
login= $(cut -d : -f 1)
done < /etc/passwd
Je ne peux pas faire $(cut -d : -f 1 $line)
Alors, quelle est la bonne méthode ?
Comment transmettre correctement la ligne $ à la commande cut dans cette boucle ?
while read line
do
login= $(cut -d : -f 1)
done < /etc/passwd
Je ne peux pas faire $(cut -d : -f 1 $line)
Alors, quelle est la bonne méthode ?
Vous n'avez pas vraiment besoin de la boucle while si votre intention est seulement de lister les noms. Il y a également une erreur de syntaxe après login=
il ne doit pas y avoir d'espace.
cut -d: -f1 /etc/passwd | \
while read login;
do
echo username: $login;
done
ou comme vous avez essayé :
while read line; do
login=$(echo $line | cut -d : -f 1)
echo $login
done < /etc/passwd
encore mieux :
db-getent passwd |cut -d: -f1 | xargs -L1 echo name:
SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.