Como eu abro um arquivo de texto no meu terminal?

99

Existe um arquivo chamado RESULTS.txt e eu quero abrir este arquivo no meu terminal. (quero dizer, eu quero ver o conteúdo do arquivo ser exibido no terminal e não em algum editor de texto)

Como faço isso?

    
por BuZZ-dEE 27.02.2013 / 13:47

15 respostas

126

Para arquivos curtos:

cat <path/your_file>

mostra diretamente um arquivo de texto no terminal.

Para arquivos maiores:

less <path/your_file>

permite rolar e pesquisar ( / text to search Enter ) no arquivo; pressione q para sair.

por exemplo,

cat /home/john/RESULTS.txt
less /home/john/RESULTS.txt
    
por dedunumax 27.02.2013 / 13:59
26

Outra alternativa é vim .

vim RESULTS.txt

Depois de abrir um arquivo com o vim, você pode inserir texto digitando i , por exemplo. Se você quiser salvar seu arquivo use :w (write) ou :q (quit) ou :wq (para gravação e finalização) ou :q! (saia e não salve). Às vezes você precisa pressionar a tecla ESC para poder digitar os comandos.

O Vim requer algum aprendizado, mas é amplamente utilizado e é muito versátil.

Verifique o wiki da ajuda da comunidade: link

  

O Vim é um editor de texto avançado que fornece o poder de fato   Editor Unix 'Vi' com um conjunto de recursos mais completo. Vim é frequentemente chamado   um "editor do programador", e é tão útil para a programação que muitos   considere um IDE inteiro. Não é apenas para programadores, no entanto. Vim   é perfeito para todos os tipos de edição de texto, desde a composição de e-mail até   editando arquivos de configuração.

    
por Private 27.02.2013 / 13:50
14

todas essas são as melhores maneiras e há mais uma maneira de fazer isso & amp; isso é com o comando head .

head -n -1 filename.txt

e

head -n -0 filename.txt

ambos fornecerão a mesma entrada.

Comando head Explicação:

Geralmente, o comando head é usado para imprimir as linhas iniciais de qualquer arquivo de texto. Podemos ver o arquivo de texto com

head filename.txt

Isso imprime as primeiras 10 linhas do arquivo de texto acima.

Se você quiser especificar o número de linhas que serão visualizadas, use o cabeçalho como

head -n 20 filename.txt

Em seguida, no arquivo de texto acima, as primeiras 20 linhas serão exibidas.

Se você quiser ver os dados inteiros do arquivo com head significa então podemos obtê-lo por

head -n -0 filename.txt

Espero que a explicação acima lhe dê uma ideia sobre o uso da cabeça.

    
por Jai 28.02.2013 / 16:59
11

Se o arquivo for longo, você pode querer usar

less RESULTS.txt

para que você possa navegar por ele com as teclas direcionais.

    
por tvuillemin 28.02.2013 / 07:11
10

Outra opção é:

tail -n 30 result.txt

para imprimir as últimas 30 linhas de um arquivo grande chamado result.txt .

    
por Jool 27.02.2013 / 15:19
7

Outra opção:

tail -f your_file

Ele mostrará as últimas dez linhas de your_file . Se um processo anexar algo a esse arquivo, você o verá no seu terminal. man tail te dá mais em tail .

É útil ver o que acontece com um servidor quando você usa esse comando em um arquivo de log.

Pressione Ctrl - C para sair quando terminar de ver.

    
por Luc M 28.02.2013 / 03:31
3

Com um editor de texto de terminal: nano /path/to/file/RESULTS.txt

    
por prophecy201 27.02.2013 / 13:17
2

Muitas boas opções fornecidas aqui já, mas outra opção se você precisa editar é o emacs:

emacs -nw RESULTS.txt

pode não precisar do -nw , dependendo. Você também pode ter que apt-get install emacs23 ou apt-get install emacs24 , ou se você não tiver X ou não quiser dependências X relacionadas, apt-get install emacs23-nox ou apt-get install emacs24-nox .

Além de cat e less , conforme mencionado em outro lugar, há more . Mais é menos, porque você vê uma página de cada vez e não pode rolar pelo próprio comando, mas você pode rolar com a janela do terminal, se você tem uma janela de terminal de rolagem:

more RESULTS.txt

Se você está no bash, você tem algo parecido com cat fazendo:

while IFS= read a;do echo "$a";done<RESULTS.txt
    
por Gary S. Weaver 27.02.2013 / 19:44
2

Existem muitas alternativas para fazer isso:

Alguns desses programas possuem muitos parâmetros, então verifique isso com --help após o comando.

  • cat filename imprime o arquivo inteiro de uma só vez
  • more / less filename comportamento semelhante para ver o arquivo em partes
  • tail filename começa a ler a partir do final do arquivo
  • grep text filename para filtrar resultados

Espero que isso funcione para você.

    
por kainlite 28.02.2013 / 03:04
1

Se você precisar editar o conteúdo do arquivo, geralmente uso o nano.

nano filename
    
por Jaison Brooks 27.02.2013 / 19:42
1

ou apenas

  

vi YourFile

use os botões hjkl para mover a linha para a esquerda / para baixo / para cima / para a direita, Esc e depois: q para sair

e você pode PageUp / PageDown

você também pode editá-lo aqui de uma forma clara

aqui você encontrará mais links

    
por 4pie0 27.02.2013 / 22:12
1

O programa de shell sed também tem uma opção para imprimir o conteúdo de um arquivo.

sed -n p RESULTS.txt

Portanto, sed percorre todas as linhas e as imprime no terminal. Mas sed também possui recursos de edição. Por exemplo, se você quiser substituir cada vírgula por um ponto, poderá escrever:

sed 's/,/./g' RESULTS.txt
    
por qbi 27.02.2013 / 22:28
1

Como parecemos listar todas as alternativas disponíveis de exibir qualquer arquivo de texto no terminal, seria muito divertido introduzir pv como tecnicamente um método válido (mas incomum), embora eu usasse normalmente cat para a maioria das coisas.

Ele está nos repositórios e, portanto, pode ser instalado com sudo apt-get install pv , se você não o tiver já.

Como as página man , pv é muito usado para

  

monitora o progresso dos dados através de um pipe ... pv copiará cada FILE fornecido para a saída padrão (- significa entrada padrão) ou, se nenhum FILE for especificado, a entrada padrão será copiada. Este é o mesmo comportamento de cat (1).

Com pv , você pode literalmente imprimir o arquivo na tela e escolher a taxa ( -L ) na qual ele aparece. O exemplo abaixo usa uma taxa alta (300), mas se você escolher uma taxa baixa como -L 50 , ela aparecerá como se o computador estivesse digitando o arquivo para você.

pv /etc/apt/sources.list -qL 300

Escusado será dizer que você pode aumentar ainda mais a taxa ( -L 8000 ), e o comando se torna muito parecido com cat , com a saída aparecendo instantaneamente.

Para mais informações, consulte man pv ou os Man pages on-line do Ubuntu .

    
por Mik 28.02.2013 / 01:22
1

Se você quiser apenas ler o conteúdo do arquivo, vá no diretório do arquivo e digite

less RESULTS.txt

Se você quiser ler e editar o arquivo de texto, do mesmo tipo de diretório

nano RESULTS.txt

A opção -w no comando nano pode ser inserida antes do nome do arquivo para evitar quebra de linhas longas.

    
por DocKuro 28.02.2013 / 03:40
0

Outra resposta mais exótica é usar grep :

grep . RESULTS.txt

O comando grep procura por cada caractere no arquivo e o imprime. Então, basicamente, o arquivo completo é impresso.

    
por qbi 27.02.2013 / 22:25