awk -F: '$0=$1 " uid="$3' /etc/passwd
awk est plus facile dans ce cas.
-F définit le séparateur de champs comme :
vous voulez donc les 1ère et 3ème colonnes. alors construisez le $0
pour fournir votre format de sortie.
c'est une utilisation très basique du puissant awk. vous voudrez peut-être lire quelques tutoriels si vous avez souvent rencontré ce genre de problème.
Cette fois, vous avez du poisson, si j'étais vous, je vais faire des recherches sur la façon de pêcher.
cut
c'est bien pour ça :
cut -d: -f1 /etc/passwd
Cela signifie "couper, en utilisant :
comme délimiteur, tout sauf le premier champ de chaque ligne du /etc/passwd
fichier".
Je pense que la meilleure option est celle-ci:
grep "/bin/bash" /etc/passwd | cut -d':' -f1