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!!😛

5 Responses to “Comando cut”


  1. 1 Cleyton Wanderley 27/08/2008 às 9:40 PM

    Boa noite.

    Minha dúvida é o seguinte: Como eu corto dessa linha toda apenas o site: http://www.google.com.br?

    1219878454.143 1 127.0.0.1 TCP_DENIED/403 1414 GET http://www.google.com.br/ – NONE/- text/html

    Se possivel me responda no email: cleyton.wanderley.batista@gmail.com

  2. 2 Nix 28/08/2008 às 11:46 PM

    Ola Cleyton,

    Para cortar essa linha, o que você tem em comum para usar como delimitador, são os espaços… então, tem que contar quantas campos tem nos espaços até chegar o lugar que você quer cortar.
    No seu exemplo, joguei a linha dentro de um arquivo chamado delete.me e cortei assim:

    # cut -d ‘ ‘ -f 7 /tmp/delete.me
    http://www.google.com.br/

    Espero ter ajudado.

    Nix

  3. 3 Cleyton 15/09/2008 às 11:38 AM

    Bom dia Nix,

    Tive fora por uns dias em treinamento.. Mas ajudou sim.. Obrigado!

  4. 4 Cleyton 15/09/2008 às 11:42 AM

    Aproveitando o contato, alguém poderia me ajudar numa outra dúvida? Eu preciso fazer um algorítmo que abra pra mim várias páginas ao mesmo tempo. Por exemplo eu preciso acessar http://www.google.com.br, http://www.uol.com.br, http://www.globo.com, http://www.bol.com.br, http://www.gmail.com. Como eu faria um script pra acessar todas essas páginas ao mesmo tempo? Obrigado pela ajuda.

  5. 5 Adriano Avelino 02/02/2010 às 12:50 AM

    Ola, gostei muito desse seu tuto sobre o comando cut. Estava eu estudando mais afundo para criação de shellscript aqui e me deparei a uma dúvida que veio como uma luva o seu artigo aqui. Ele está bem descrito para um entendimento. continue com esse trabalho!

    Um abraço


Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s




Follow Nix on WordPress.com
agosto 2008
S T Q Q S S D
« jul   set »
 123
45678910
11121314151617
18192021222324
25262728293031

Flickr Photos

Fast-flying Falcon

Mais fotos

%d blogueiros gostam disto: