Nano - pula para o final do arquivo

23

Eu tenho alguns arquivos de log longos. Posso ver as últimas linhas com tail -n 50 file.txt , mas às vezes preciso editar essas últimas linhas.

Como eu pulo direto para o final de um arquivo ao visualizá-lo com nano ?

    
por Marko Pacak 31.01.2018 / 10:53

6 respostas

28

Abra o arquivo com nano file.txt .

Agora digite Ctrl + _ e depois Ctrl + V

    
por 31.01.2018 / 10:53
14

Muitos editores suportam a opção +NNN na linha de comando para pular diretamente para a linha NNN . Felizmente para você, nano parece pular para o final se o número de linha informado ultrapassar o final do arquivo, então você pode usar algo como:

nano +999999 file

Isso também funciona em joe , mas não em, por ex. less ou VIM, eles reclamam de passar do EOF. (pelo menos os do meu sistema. less +G file e vi +$ file trabalham neles.)

É claro que algo como $EDITOR +$(wc -l file) file provavelmente funcionaria na maioria dos editores, mas isso é um pouco bobo e envolve a leitura do arquivo duas vezes.

    
por 31.01.2018 / 11:16
9

Na ajuda interna do Nano ( ^G ):

M-\   (^Home)   Go to the first line of the file
M-/   (^End)    Go to the last line of the file

Então, pressione Alt + \ para ir para a primeira linha ou pressione Alt + / para ir para a última linha .

  • Isto seria o equivalente de gg (start) ou G (end) em vim .
  • Isso também indica que Ctrl + Início ou Ctrl + Fim deve funcionar, mas nunca funcionou para mim
eles parecem funcionar nativamente no console / desktop, mas não via SSH usando o PuTTY.
  • A maneira como me lembro disso é que / está perto da parte inferior do teclado e \ está perto do topo.
  • Se você quiser um comando , pode escrever uma função em .bashrc ou .bash_aliases para usar a contagem de linhas de wc :

    function nano-end {
        # if the file exists, jump to the end
        # otherwise, just open an empty nano
        [ -f "$1" ] && nano +$(wc -l "$1") || nano
    }
    

    Agora basta digitar nano-end filename para abrir o arquivo para sua última linha!

        
    por 31.01.2018 / 17:36
    3

    Ctrl + Fim está funcionando, se você tiver uma versão recente (compilada) de nano editor.

    Se você não sabe como fazê-lo, leia o Compilando o editor Nano com opções

    Observe que nos sistemas mais novos, por exemplo baseado no Ubuntu 18.04, já existe essa versão.

    Do registro de alterações :

    2017 12 de abril - GNU nano 2.8.1

    ... faz ^ Home e ^ End ir para o início e fim do arquivo (nos terminais que apoiar esses pressionamentos de tecla) ...

    PuTTY vs Cygwin

    Eu não tenho o PuTTY instalado, aqui temos que confiar em outras declarações que essas combinações de teclas não funcionam no Windows 10 + PuTTY + SSH + nano > 2.8.1.

    Por outro lado, tenho o Cygwin e o Windows 10 + Cygwin + SSH + nano > 2.8.1 funciona Ok.

        
    por 01.02.2018 / 11:47
    2

    OP quer que eu adicione uma resposta para pular para a última linha em vim .

    ESC + Deslocamento G leva você ao começo da última linha.

    ESC + Deslocamento G A leva você ao fim da última linha e o modo de inserção será ativado.

        
    por 31.01.2018 / 11:31
    0

    Para ir diretamente para o final do arquivo no nano, basta digitar: Alt + /

        
    por 22.10.2018 / 09:07

    Tags