Comandos

9 de maio de 2016

Comando CAT

Mais artigos de »
Escrito por: Leonardo Souza
Tags:

Comando CAT

O comando CAT envia o conteúdo de um ou mais arquivos para uma saída padrão (monitor), ou para outro arquivo qualquer. Isso é possível porque os sistemas Unix, incluem-se nestes o GNU/Linux e FreeBSD, criam descritores padrão de arquivos que permitem processar entrada e saída de dados. Estes descritores podem ser direcionados de e para outros arquivos e/ou processos. Por padrão, o descritor de entrada (stdin) é o teclado, assim como o de saída (stdout) e o de erro (stderr) são a tela do computador.

Este recurso é muito interessante pois o redirecionamento permite visualizar conteúdo de arquivos, copiá-los e até concatenar dois ou mais arquivos, seja mostrando o conteúdo na tela do computador ou enviando esta saída para um outro arquivo.

Sendo assim é plenamente possível implementar um servidor sobre este sistema e ser altamente bem sucedido. Este artigo apresenta a instalação do PC-BSD por meio do ambiente de texto.




Visualizando conteúdo do arquivo

Dessa forma, para ver o conteúdo de um arquivo, basta enviar seu conteúdo para a saída padrão (tela do computador). Para fazer isso deve-se digitar o comando CAT seguido do arquivo.

# cat /etc/rc.conf

Comando CAT

Neste exemplo estamos visualizando o conteúdo do arquivo /etc/rc.conf.

Uma opção interessante é visualizar o número das linhas deste arquivo. Para isso basta passar como parâmetro a opção “-n”.

# cat –n /etc/rc.conf

Comando CAT

Desta forma visualizamos o mesmo arquivo, porém mostrando o número de linha.

Concatenando arquivos

Como o comando CAT permite redirecionar a saída de um ou mais arquivos para uma saída, é possível direcionar esta saída para um terceiro arquivo, ou seja, unir estes arquivos em um terceiro. Para este exemplo usaremos dois arquivos como exemplo: arquivo1 e arquivo2.

Arquivo1

Para manipular estes arquivos usaremos o editor de texto ee, padrão do FreeBSD. Para isso digite o comando “ee arquivo1”. Este comando abrirá um arquivo em branco, caso não exista algum com o nome arquivo1.

# ee arquivo1

arquivo1

Escreva algum texto no arquivo e salve-o.

Arquivo2

Agora vamos criar o arquivo2, para isso digite o comando “ee arquivo2”. Este comando abrirá um arquivo em branco, caso não exista algum com o nome arquivo2.

# ee arquivo2

arquivo2

Escreva algum texto no arquivo e salve-o.

Podemos agora visualizar os arquivo criados com o comando ls.

ls CAT

Note que não há qualquer outro arquivo neste diretório.

Vamos agora redirecionar o conteúdo dos arquivos concatenando-os e mostrando seu conteúdo na tela, ou seja, direcionando o conteúdo para a saída padrão.

# cat arquivo1 arquivo2

concatenando na tela

Perceba que o conteúdo dos arquivos foram concatenados na tela.

Outra opção interessante é unir os arquivos em um terceiro arquivo. Neste caso utilizamos a opção “>” (sinal de maior) ou “>>” (dois sinais seguidos).

# cat arquivo1 arquivo2 > arquivo3

arquivo3

A grande diferença entre usar um ou dois sinais é que utilizando apenas um sinal o sistema criará o arquivo se ele não existir e caso ele exista será substituído por um novo. Por outro lado utilizando dois sinais “>>” o sistema cria um novo em caso de não existir o arquivo e se ele existir o conteúdo direcionado será adicionado no fim do arquivo, ou seja, não será apagado.

Conclusão

Como vimos o comando CAT possui uma grande funcionalidade, já que permite a manipulação de arquivos, incluindo leitura e concatenação de arquivos. Sua função é tão importante que o aspirante a certificação Linux LPI (LPIC-1)precisa conhecê-lo e demonstrar conhecimento no seu uso.

Espero que o conteúdo tenha sido útil, em caso de dúvidas utilize os comentários.






Sobre o Autor

Foto de perfil de Leonardo Souza
Leonardo Souza
Bacharel em Informática, pós graduado em Segurança de Redes de Computadores e analista de Segurança da Informação. Entusiasta de Segurança da Informação e usuário FreeBSD, porém sem xiismo.




0 Comments


Seja o Primeiro a Comentar!


You must be logged in to post a comment.