awk -F: '$0=$1 " uid="$3' /etc/passwd
awk è più semplice in questo caso.
-F definisce il separatore di campo come :
quindi vuoi è la prima e la terza colonna. quindi costruisci il $0
per fornire il formato di output.
questo è un uso molto basilare del potente awk. potresti voler leggere alcuni tutorial se hai affrontato spesso questo tipo di problema.
Questa volta hai del pesce, se fossi in te, farò delle ricerche su come pescare.
cut
è carino per questo:
cut -d: -f1 /etc/passwd
Questo significa "taglia, usando :
come delimitatore, tutto tranne il primo campo di ciascuna riga del /etc/passwd
file".
Penso che l'opzione migliore sia così:
grep "/bin/bash" /etc/passwd | cut -d':' -f1