De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.

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

Adicionar comentário

* Campos obrigatórios
5000
Powered by Commentics

Comentários

Nenhum comentário ainda. Seja o primeiro!


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