Skip to main content

Exemplo de uso do comando Linux Seq

Comando sort - Como ordenar dados em um arquivo de texto no Linux - LPIC 1 (Abril 2025)

Comando sort - Como ordenar dados em um arquivo de texto no Linux - LPIC 1 (Abril 2025)
Anonim

Este guia mostrará como usar o comando seq para gerar listas de números dentro do terminal Linux.

Sintaxe Básica do Comando Seq

Imagine que você queria exibir os números de 1 a 20 na tela.

O seguinte comando seq mostra como fazer isso:

seq 1 20

Por si só, este comando é bastante inútil. No mínimo, você desejará enviar os números para um arquivo.

Você pode fazer isso usando o comando cat da seguinte maneira:

seq 1 20 | cat> numberedfile

Agora você terá um arquivo chamado numberedfile com os números de 1 a 20 impressos em cada linha.

O método que mostramos até agora para exibir uma sequência de números poderia ter sido condensado para o seguinte:

seq 20

O número inicial padrão é 1, portanto, apenas fornecendo o número 20, o comando seq conta automaticamente de 1 a 20.

Você só precisa usar o formato longo se quiser contar entre dois números diferentes da seguinte maneira:

seq 35 45

Isso exibirá os números 35 a 45 para a saída padrão.

Como definir um incremento usando o comando Seq

Se você quiser mostrar todos os números pares entre 1 e 100, você pode usar a parte incremental de seq para os números da etapa 2 de cada vez, como mostra o exemplo a seguir:

seq 2 2 100

No comando acima, o primeiro número é o ponto de partida.

O segundo número é o número para incrementar em cada passo, por exemplo, 2 4 6 8 10.

O terceiro número é o número final para contar.

Formatando o comando Seq

Simplesmente enviar números para o monitor ou para um arquivo não é particularmente útil.

No entanto, talvez você queira criar um arquivo com todas as datas em março.

Para fazer isso, você pode usar a seguinte opção:

seq -f "% 02g / 03/2016" 31

Isso exibirá a saída semelhante à seguinte:

  • 01/03/2016
  • 02/03/2016
  • 03/03/2016

Você notará o% 02g. Existem três formatos diferentes: e, f e g.

Como exemplo do que acontece quando você usa esses formatos diferentes, tente os seguintes comandos:

seq -f "% e" 1 0,5 3seq -f "% f" 1 0,5 3seq -f "% g" 1 0,5 3

A saída do% e é a seguinte:

  • 1,000000e + 00
  • 1.500000e + 00
  • 2.000000e + 00
  • 2,500000e + 00
  • 3.000000e + 00

A saída do% f é a seguinte:

  • 1.000000
  • 1.500000
  • 2.000000
  • 2.500000
  • 3.000000

Finalmente, a saída de% g é a seguinte:

  • 1
  • 1.5
  • 2
  • 2.5
  • 3

Usando o comando Seq como parte de um loop for

Você pode usar o comando seq como parte de um loop for para executar o mesmo código em um determinado número de vezes.

Por exemplo, digamos que você queira exibir o termo "olá mundo" dez vezes.

É assim que você pode fazer isso:

para i em $ (seq 10)Fazecho "olá mundo"feito

Alterar o separador de sequência

Por padrão, o comando seq exibe cada número em uma nova linha.

Isso pode ser alterado para qualquer caractere delimitador que você deseja usar.

Por exemplo, se você deseja usar uma vírgula para separar os números, use a seguinte sintaxe:

seq -s, 10

Se você preferir usar um espaço, então você precisa colocá-lo entre aspas:

seq -s "" 10

Faça os números de seqüência o mesmo comprimento

Quando você imprime os números em um arquivo, pode ficar aborrecido, pois, ao aumentar as dezenas e centenas, os números são de tamanho diferente.

Por exemplo:

  • 1
  • 2
  • 3
  • 10
  • 11
  • 99
  • 100
  • 200
  • 1000
  • 10000

Você pode fazer todos os números do mesmo tamanho da seguinte forma:

seq -w 10000

Quando você executar o comando acima, a saída será a seguinte:

  • 00001
  • 00002
  • 00003
  • 00010
  • 00011
  • 00099
  • 00100
  • 00200
  • 01000
  • 10000

Exibindo números em ordem inversa

Você pode exibir os números em uma seqüência na ordem inversa.

Por exemplo, se você quiser exibir os números de 10 a 1, use a seguinte sintaxe:

seq 10 -1 1

Números de ponto flutuante

Você também pode usar o comando sequence para trabalhar em números de ponto flutuante.

Por exemplo, se você quiser mostrar todos os números entre 0 e 1 com um passo de 0,1, você pode fazer isso da seguinte maneira:

seq 0 0,1 1

Resumo

O comando seq é mais útil quando usado como parte de um script bash.