você está aqui: Home  → Arquivo de Mensagens

Bash: Gerando sequencias

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 04 de outubro de 2013

Para gerar sequencias de números eu sempre usei o comando seq, como em:

$ for n in `seq 1 3 10`
> do
> echo $n
> done
1
4
7
10

O primeiro valor (1) é o valor inicial, o segundo (3) é o incremento e o último (10) é o valor final da sequencia.

Mas, existem outras possibilidades:

$ for n in {1..10..3}
> do
>  echo $n
> done
1
4
7
10

ou ainda

$ for n in {01..10..3}
> do
>  echo $n
> done
01
04
07
10

e também:

$ for n in {a..z..3}
> do
>  echo $n
> done
a
d
g
j
m
p
s
v
y

Para criar uma lista em html:

for menu in {1..4}
 do
   echo -e "<ul>\n <li>menu $menu</li>\n  <ul>"
     for items in {1..5}
       do echo "   <li>item $items</li>"
          if [ $items -eq 5 ]
            then echo -e "  </ul>"
          fi
       done
   echo "</ul>"
done > index.html

E o resultado (arquivo index.html)

<ul>
 <li>menu 1</li>
  <ul>
   <li>item 1</li>
   <li>item 2</li>
   <li>item 3</li>
   <li>item 4</li>
   <li>item 5</li>
  </ul>
</ul>
<ul>
 <li>menu 2</li>
  <ul>
   <li>item 1</li>
   <li>item 2</li>
   <li>item 3</li>
   <li>item 4</li>
   <li>item 5</li>
  </ul>
</ul>
<ul>
 <li>menu 3</li>
  <ul>
   <li>item 1</li>
   <li>item 2</li>
   <li>item 3</li>
   <li>item 4</li>
   <li>item 5</li>
  </ul>
</ul>
<ul>
 <li>menu 4</li>
  <ul>
   <li>item 1</li>
   <li>item 2</li>
   <li>item 3</li>
   <li>item 4</li>
   <li>item 5</li>
  </ul>
</ul>

Referência: Portal commandlinefu

Veja também



Veja a relação completa dos artigos de Rubens Queiroz de Almeida

 

 

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script