Tente:
$ awk -F'[:}]' '$(NF-1) >= 1334575352456 && $(NF-1) <= 1334575353456' file
{"a":"1", "b":"2", "c":"4", "time":1334575352456}
O delimitador -F'[:}]'
set fields é :
ou }
, para que você possa acessar o valor de tempo acessando o segundo do último campo, usando $(NF-1)
.
Para salvar a saída, use:
$ awk -F'[:}]' '$(NF-1) >= 1334575352456 && $(NF-1) <= 1334575353456' file > output.txt
Se você tem gawk 4.1.0
e acima, você pode usar a opção -i
para fazer a edição no local:
$ awk -i inplace -F'[:}]' '$(NF-1) >= 1334575352456 && $(NF-1) <= 1334575353456' file