Escreva linhas em um arquivo de menos

17

Enquanto estiver em vim, posso escrever várias linhas do arquivo que estou visualizando para outro arquivo. Por exemplo,

:1,10 w outfile.txt

gravará as linhas de 1 a 10 em outfile.txt.

Posso fazer o mesmo enquanto visualizo um arquivo usando less?

eebbesen
fonte

Respostas:

17
10Gmm1G|mcat > outfile.txt

(digitado dentro less) parece funcionar desde que a entrada não caiba em uma tela (nesse caso, toda a entrada termina outfile.txtpor algum motivo).

  • 10G leva você para a linha 10
  • mmdefine a mmarca lá
  • 1G(o mesmo que gneste caso) leva você à linha 1
  • |m tubo da linha atual para marcar m
  • cat > outfile.txt: que é canalizado para esse comando.
Stéphane Chazelas
fonte
Eu tive que colar o comando no prompt porque a digitação 10Gme levou para a 10ª linha antes que eu pudesse digitar o resto, mas realmente funcionou.
eebbesen
2
@ebeben, bem, esse era o ponto. Veja minha edição
Stéphane Chazelas
Obrigado por esclarecer @StephaneChazelas (bem como pela sua resposta inicial) - agora está claro.
eebbesen
1
génio para o resgate novamente :)
Ramesh
4

Você poderia usar viewo mesmo quevi -r

X Tian
fonte
4
Isso funcionará, mas para arquivos grandes eu prefiro usar less- é meu entendimento que vifaz com que o arquivo inteiro seja carregado de uma só vez.
eebbesen