Como imprimir o último caractere de um arquivo

7

No Unix, usando um comando simples como o sed, existe uma maneira de imprimir o último caractere de um arquivo?

    
por slhck 03.03.2011 / 14:01

5 respostas

24

tail é a ferramenta certa, não sed.

tail -c 1 filename
    
por 03.03.2011 / 14:05
7

tail -c 2 file deve fazê-lo. Deve ser -c 1 na teoria, mas a prática provou que estou errado.

Editar: Se o seu arquivo tiver um caractere de fim de linha que você deseja ignorar, é 2. 1 caso contrário.

    
por 03.03.2011 / 14:06
3

Experimente este cat filename | tail -c -1

    
por 03.03.2011 / 14:05
0

Isso deve funcionar, desde que a última linha não esteja vazia:

sed -n '$s/.*\(.\)$//p' file
    
por 03.03.2011 / 14:05
0

Uso: cat test | sed -e "s/^.*\(.\)$//"

em que test é o nome do seu arquivo.

    
por 03.03.2011 / 14:07

Tags