Cortar as duas primeiras linhas

0

Gostaria de recuperar uma lista excluindo as duas primeiras linhas

$ pip list
Package                            Version  
---------------------------------- ---------
alabaster                          0.7.10   
anaconda-client                    1.6.9    
anaconda-navigator                 1.7.0    
anaconda-project                   0.8.2    
appnope                            0.1.0    
appscript                          1.0.1    
asn1crypto                         0.24.0   
astroid                            1.6.1    
astropy                            2.0.3    
attrs                              17.4.0   

Como cortar as duas primeiras linhas como:

pip list | cut line=2
    
por JawSaw 03.05.2018 / 09:05

2 respostas

2

Simplesmente com o comando sed :

pip list | sed '1,2d'

Explicação: O comando sed exclui ( d ) linhas no intervalo de 1 a 2 (e gera todo o resto).

Ou awk :

pip list | awk 'NR > 2'

Explicação: O programa awk mostra tudo na linha 3 em diante.

awk seria particularmente útil se você planeja analisar mais detalhes dessa saída, como extrair apenas os nomes dos pacotes:

pip list | awk 'NR > 2 { print $1 }'

O comando cut , que você mencionou na questão (desconsiderando que a semântica usada está errada), não corta linhas . Bem, isso faz, mas corta campos de linhas.

    
por 03.05.2018 / 09:16
6

Simplesmente com o comando tail :

pip list | tail -n+3 -
  • de tail signature tail [OPTION]... [FILE]... - quando FILE é - , leia entrada padrão
  • -n, --lines=[+]NUM - imprime as últimas NUM linhas, em vez das últimas 10; ou use -n +NUM na saída começando com a linha NUM
por 03.05.2018 / 09:11