você está aqui: Home  → Arquivo de Mensagens

Shell scripts não convencionais

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 18 de Julho de 2003

Na primeira linha de uma shell, geralmente encontramos algo do tipo:

  #!/bin/bash

ou

  #!/bin/csh

O que poucos sabem, é que podemos criar shells diretamente com outros comandos do Unix.

Por exemplo, eu frequentemente preciso saber o meu endereço de trabalho, mas nunca me lembro onde coloquei o cartão com todos os dados. Este problema pode ser facilmente resolvido com uma shell como abaixo:

  #! /bin/more
  Rubens Queiroz de Almeida
  Cidade Universitária Zeferino Vaz
  Centro de Computação
  Unicamp
  13.083-970 - Campinas - São Paulo

Este é um script que ecoa para a tela o seu conteúdo. Ao executá-lo temos:

  #! /bin/more
  Rubens Queiroz de Almeida
  Cidade Universitária Zeferino Vaz
  Centro de Computação
  Unicamp
  13.083-970 - Campinas - São Paulo

Bom, apareceu também a primeira linha, que é uma informação que não preciso. Para resolver isto, basta fornecer ao comando more, o argumento +2, instruindo o comando a iniciar seu trabalho a partir da linha 2. O script fica então assim:

  #! /bin/more +2
  Rubens Queiroz de Almeida
  Cidade Universitária Zeferino Vaz
  Centro de Computação
  Unicamp
  13.083-970 - Campinas - São Paulo

Desta forma a linha inicial não é mais exibida.

Da mesma forma, se eu substituir a primeira linha por

  #! /bin/ls -l

Teremos uma shell que executa o comando **ls -l* sobre ele mesmo, como abaixo:

  $ ./endereço
  -rwxr-xr-x    1 queiroz  queiroz       137 Jul 12 18:40 ./endereço

Parece meio inútil, mas certamente deve haver algum uso inteligente para esta facilidade ....



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