Comando echo

Basicamente, a função do comando echo é mostrar mensagens na tela… uma espécie de papagaio binário.. você escreve e e ele repete o que você escreveu!

Exemplo:

# echo “Hello World”
Hello World

Vejam que ele apenas repetiu o que foi digitado na saída padrão (tela). Mas podemos enviar essa mensagem para um arquivo… para isso usamos os operadores de redirecionamento > ou >>.

A função desses operadores é justamente redirecionar o que deveria sair na tela para um arquivo… não deve ser confundida com a função do | (pipe) que é jogar a saída de um comando para outro!

Exemplo do uso dos operadores de redirecionamento > e >> com o comando echo:

Vamos criar uma lista de nomes e telefones que irão para um arquivo chamado cad_povo.txt:

# echo “nome-telefone” > cad_povo.txt
# echo “vana-98785764” >> cad_povo.txt
# echo “nix-38977604” >> cad_povo.txt
# echo “brida-95847265” >> cad_povo.txt
# echo “kabel-81569035” >> cad_povo.txt

Acima, enviamos a saída do comando echo para um arquivo chamado cad_povo.txt utilizando o operador de redirecionamento >; caso o arquivo não exista, será criado.

Se o arquivo já existir, fará com que o arquivo seja sobrescrito, isto é, irá apagar todo conteúdo do arquivo e irá inserir a linha nome-telefone.

Agora, nas demais linhas, usamos o operador >>, pois o arquivo cad_povo.txt já existe e só queremos acrescentar mais linhas no final do arquivo! Lembrando que, se o arquivo cad_povo.txt não existisse, esse operador também criaria o arquivo!

Conferindo como nosso arquivo ficou:

# cat cad_povo
nome-telefone
vana-98785764
nix-38977604
brida-95847265
kabel-81569035

Aproveitando este post, eu comentei antes sobre o comando cut e e falei que ele não precisa que o padrão seja exatamente os “:” que usamos como exemplo… Nesse arquivo que criamos com o comando echo, também temos um padrão no delimitador dos campos nome e telefone, que seria o – (hífen)!

Vamos supor que quero ver apenas os nomes que estão cadastrados:

# cut -d- -f1 cad_povo.txt
nome
vana
nix
brida
kabel

Acima, estamos pedindo ao comando cut que corte a cada – e me mostre a coluna 1 do arquivo cad_povo.txt

Caso queria ver apenas os telefones cadastrados

# cut -d- -f2 cad_povo.txt
telefone
98785764
38977604
95847265
81569035

Vejam que ele sempre precisará de um padrão para ser o delimitador do local onde se quer cortar!

É isso aí pessoal…lembrando que tanto o comando echo quanto o comando cut possuem páginas de manuais… então, se houver dúvidas…

# man echo

# man cut

Até o próximo post! 😉

Anúncios

Comando cut

Continuando com a série de posts sobre alguns comandos do Linux… hoje vamos falar sobre o comando cut.

O comando cut é a “tesoura” do linux; ele é utilizado para “cortar” campos ou pedaços de dados de arquivos.

Vamos imaginar a seguinte situação. O diretor de estratégias da empresa deseja a lista de usuários que logam no sistema da empresa. As informações sobre os usuários cadastrados no sistema estão no arquivo /etc/passwd.

Já vimos esse arquivo em alguns posts atrás… e sabemos que ele tem várias informações, que não são relevantes ao que o diretor está solicitando.

É nessa hora que entra em ação o comando cut! Ele será utilizado para cortar o campo que tem o nome dos usuários para que possamos levar para o diretor!

Vamos analisar uma linha do passwd:

nix:x:1000:1000:,,,:/home/nix:/bin/bash

Vejam que em cada linha do arquivo passwd sempre vou ter 7 campos, e eles são separados por : (dois pontos), o que faz com que tenhamos um padrão na separação dos campos; ou seja, vamos ter algo que separe os campos em um arquivo (lembrando que tem que ser em todas as linhas para dar certo).

Para usar o comando cut, precisamos bater um papo com o comando e responder pra ele 2 coisas:

1) Onde vamos cortar, ou seja, qual padrão será utilizado para cortar?

2) Depois de cortar, o que vamos mostrar?

No nosso caso, precisamos da primeira coluna do /etc/passwd:

# cut -d : -f 1 /etc/passwd
root
daemon
bin
sys
sync

O comando acima está dizendo: “Corte em cima dos : (d = delimitador), e mostre apenas o campo (f – field – campo) 1 (um) do arquivo passwd”

Então, já sabemos usar o comando cut em sua forma básica! É importante lembrar que:

✔ o comando só vai funcionar corretamente se todas as linhas tiverem os “:” que é o local que o cut vai cortar;

✔ os “:” são os delimitadores padrão nesse arquivo; isso quer dizer que em outro arquivo, tipo de delimitador pode ser outro.

É isso aí pessoal… até o próximo post!

PS: Não esqueçam de chamar o diretor para ver a lista de usuários!! 😛