Infelizmente, não tenho absolutamente nenhuma experiência com OSX
ou o utilitário dscl
. No entanto, tenho uma experiência de awk
. Também tive uma rápida leitura da página de manual dscl
readall
option:
Displays all the records of a given type. The output of readall is formatted in
the same way as read with a "-" on a line as a delimeter between records.
Você pode alterar a maneira como awk
trata os registros. Isso imprimirá os registros em que o UniqueID é maior ou igual a 500:
awk -v RS="-" '{ for (i=1; i<=NF; i++) if ($i ~ /UniqueID:/ && $(i+1) >= 500) print $0 }'
Você tem um formato de saída esperado?