Para reverter um arquivo, caractere por caractere, usando tac
, use:
tac -r -s 'x\|[^x]'
Isso está documentado em info tac
:
# Reverse a file character by character. tac -r -s 'x\|[^x]'
-r
faz com que o separador seja tratado como uma expressão regular . -s SEP
usa SEP
como separador . x\|[^x]
é uma expressão regular que corresponde a todos os caracteres (aqueles que são x
e os que não são x
).
$ cat testfile
abc
def
ghi
$ tac -r -s 'x\|[^x]' testfile
ihg
fed
cba%
$
tac file
não é o mesmo que cat file
, a menos que file
tenha apenas uma linha. tac -r file
é o mesmo que tac file
porque o separador padrão é \n
, que é o mesmo quando tratado como uma expressão regular e não.