cut - Comando com exemplos
Dica publicada em Shell Script / Introdução
cut - Comando com exemplos
O comando cut pode ser usado para mostrar apenas seções específicas de um arquivo de texto ou da saída de outros comandos.
Ele lê o conteúdo de um ou mais arquivos, ou a saída de comandos, e apresenta como resultado uma coluna.
O cut é ótimo para trabalhar com delimitadores entre os dados como ":" ou ";", mas também pode ser usado contando os caracteres partindo do início ou do fim de uma linha.
As opções mais usadas, são:
Pode ser usado, por exemplo, para mostrar os logins de todos os usuários do sistema contidos no arquivo passwd:
cut -d: -f 1 /etc/passwd
Vamos usar o mesmo arquivo, e agora vamos obter os logins e os números de usuário:
cut -d: -f 1,3 /etc/passwd
cut -c 1-10 /etc/passwd
Exemplo com o comando date:
date | cut -d: -f1
free | tr -s ' ' | sed '/^Mem/!d' | cut -d" " -f2
Era isso. Até a próxima dica!
Fontes:
Ele lê o conteúdo de um ou mais arquivos, ou a saída de comandos, e apresenta como resultado uma coluna.
O cut é ótimo para trabalhar com delimitadores entre os dados como ":" ou ";", mas também pode ser usado contando os caracteres partindo do início ou do fim de uma linha.
As opções mais usadas, são:
- -b, -bytes [bytes] :: Mostra a lista de bytes do arquivo.
- -c, -characters [número] :: Mostra o número de caracteres do arquivo (o Tab e o espaço são contados como caracteres).
- -f, -field [campos] :: Mostra a lista de campos
- -d, delimite [caracter] :: Opção para uso com "-f", determina o caractere delimitador e na ausência o padrão é o Tab.
Exemplos
Mostrando o primeiro campo de um arquivo que usa como delimitador dois pontos (:).Pode ser usado, por exemplo, para mostrar os logins de todos os usuários do sistema contidos no arquivo passwd:
cut -d: -f 1 /etc/passwd
root daemon bin sys sync games ...Mostrando o primeiro e o terceiro campo de um arquivo que usa como delimitador dois pontos (:).
Vamos usar o mesmo arquivo, e agora vamos obter os logins e os números de usuário:
cut -d: -f 1,3 /etc/passwd
root:0 daemon:1 bin:2 sys:3 sync:4 games:5 ...Mostrando apenas os 10 (dez) primeiros caracteres de qualquer linha em um arquivo:
cut -c 1-10 /etc/passwd
root:x:0:0 daemon:x:1 bin:x:2:2: sys:x:3:3: sync:x:4:6 games:x:5: ...Exemplos do cut recebendo a saída de um comando:
Exemplo com o comando date:
date | cut -d: -f1
Ter Abr 16 20Um exemplo mais elaborado mostrando a quantidade de memória RAM:
free | tr -s ' ' | sed '/^Mem/!d' | cut -d" " -f2
3073768
Era isso. Até a próxima dica!
Fontes: