br comando com a opção -n e '$ ='

3

Eu quero imprimir o número de linhas em um arquivo usando o comando sed . Eu tenho a seguinte linha para isso, por favor, qualquer um pode explicar em detalhes.

sed -n '$=' myfile.txt
    
por Narasimha Rao 18.05.2016 / 08:32

2 respostas

6

Se você receber algum comando que funcione, mas não entender as opções, use man command para obter mais informações sobre as opções usadas. man sed mostrará a você (se você rolar / pesquisar pela saída):

   -n, --quiet, --silent

          suppress automatic printing of pattern space

e

   =      Print the current line number.

e (a pesquisa por $ pode ser feita prefixando-a com uma barra invertida \ ):

   $      Match the last line.

Por isso, você recebe o número da linha da última linha, sem imprimir adicionalmente a linha correspondente (a última linha) encontrada, o que seria o padrão.

    
por 18.05.2016 / 08:46
1

= imprime o número da linha atual. $ é a última linha no arquivo. -n suprime a saída normal.

    
por 18.05.2016 / 08:41

Tags