Se você não quiser usar awk
, pode fazer algo como
while IFS=: read -r uid username userid; do
printf "user:%s\nusername:%s\nuserid:%s\n" "$uid" "$username" "$userid";
done <file
user:1000
username:Tom
userid:user1
user:1002
username:Jerry
userid:user2
user:1003
username:Victor
userid:user3
user:1004
username:Jason
userid:user4
IFS
é o separador de registro de entrada, definindo-o como :
você pode ler diretamente as variáveis do arquivo.