Dicas Linux & Scripts em Bash | Peopleware
123 321
logo



Dicas Linux & Scripts em Bash

Hoje vou deixar aqui algumas dicas de como fazer uns programas usando Bash. Quando se fala em bash, refere-se a um programa que aceita comandos do teclado e executa-os.

Neste sentido, Bash é um interpretador de comandos, uma espécie de tradutor entre o sistema operativo e o utilizador, normalmente conhecido como shell.


Se quiserem saber qual a shell que estão a usar podem executar o comando:

[root@pplware~]# echo $SHELL
/bin/bash

No nosso caso verificamos que estamos a usar bash.

Algumas das funções dos interpretadores de comandos consistem:

  • Fornecer uma interface de linha de comandos
  • Realizar redirecção de I/O
  • Realizar substituição de nomes de ficheiros
  • Realizar substituição de variáveis
  • Fornecer uma linguagem de programação interpretada
  • Entre outros.

Vamos então começar com o Hello Worl em Bash.

Precisamos de arranjar um editor de texto para escrever o nosso código, gravar e mandar executar. Eu vou fazer tudo pela linha de comandos e para tal vou usar o editor de texto nano. Quem não tiver pode usar o vi, vim, pico, etc etc.

Bem, então abrir a linha de comandos em linux escrever:

nano hello.sh

sshot-1

Depois de escrever o código não se esqueçam de gravar. Basicamente o que o nosso programa vai fazer é escrever na vossa shell Hello World. A primeira linha de código indica qual a shell a utilizar e na segunda linha mandamos escrever Hello World.

Vamos agora atribuir as permissões de execução ao ficheiro para que este se torne um executável para o seu dono. Para isso escrevam o seguinte comando.

chmod 744   (Para quem não se lembra sobre como atribuir permissões, ver aqui)

Agora vamos correr o nosso script através da instrução ./hello.sh

[root@pplware.com ~]# ./hello.sh
Hello World

Ficam aqui mais uns exemplos como TPC :)

Exemplo1

sshot-5

OUTPUT

Benvindo ao pplware.com
Data e Hora: Mon Dec 22 15:47:03 WET 2008
Continuaçao bom trabalho

Exemplo2

sshot-6

OUTPUT

Data e Hora: Mon Dec 22 15:49:59 WET 2008

Uso do disco
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/hda1             76897828   5097324  67831248   7% /
tmpfs                   517688         0    517688   0% /dev/shm

Utilizadores ligados
15:49:59 up 23 days, 11:21,  1 user,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
pplware     pts/1    172.16.127.249   15:32    0.00s  0.04s  0.00s /bin/bash

Votos de boas festas.


  Imprima este artigo   Post2PDF      

 

Arquivado na categoria: Truques & Dicas



19 comentários »

  1. Luis Miguel says:

    @offtopic

    Desculpem este offtopic, ainda por cima logo no inicio
    Sabem de algum programa que permita usar uma lista de email sem depender de um servidor externo? É que gostaria de manter um canal de email sem as restrições do meu servidor (telepac) com os meus colaboradores de um modo eficaz. Neste momento tenho um script em asp para o fazer mas falha demasiado.
    Obrigado

  2. racoq says:

    Isto que vou dizer é uma pequena provocação :) . Mas mais um post para os trolls de Windows, virem dizer como o Linux é rústtico e que se tem de usar a consola.

  3. remote says:

    Sim é tão rustico que que a microsoft agora anda a imita-lo com o powershell

  4. Pedro Pinto says:

    @racob

    O objectivo não é esse. Em windows, se formos para a linha de comandos também temos coisas deste tipo como os batch files.
    Sabendo que às vezes a consola é a salvação para muita coisa, aqui fica mais uma forma para simplificar muita coisa.

    Offtopic
    Os comentários começam a cair..O SLB já deve ter acabado :)

  5. José Fonseca says:

    Este tipo de posts é muito interessante.
    É muito útil saber trabalhar com os scripts bash.
    Bom trabalho!

  6. Miguel says:

    Para quem quer começar a lidar com scripts deve ter em conta o seguinte:

    1) quando estiverem a testar scripts não o façam na conta “root” – um engano pode danificar a vossa instalação de linux.

    2) a linha “#!/bin/bash” não pode ter espaços antes e tem de ser obrigatóriamente a primeira linha do ficheiro (não pode ter sequer linhas em branco antes). Esta linha é responsável por indicar qual a aplicação que vai executar a script – a bash, neste exemplo

    3) o caracter “#” serve para indicar o início de um comentário, tudo o que for escrito depois dele será ignorado, excepto para a primeira linha (ver ponto 1)

    4) sempre que uma palavra começa com “$” significa que é uma variável – por exemplo $HOSTNAME

    As scripts são um tópico muito intressante e permitem automatizar tarefas repetitivas de forma simples.

    Boas scripts :)

  7. Márcio Pinto says:

    Não há aí nenhum comando do género

    echo “LEARN VLSM”
    echo “type subnet here”
    echo
    echo “require subnetting”
    echo
    echo “auto processing”
    echo “DONE”

    Também dava jeito.
    Mais um tutorial para aprender a brincar

  8. Pedro Pinto says:

    @Miguel
    Bom complemento ao post.

    @José Fonseca
    Vamos ver se o povo pede mais ou se ficamos por aqui :) Abraço

  9. Bom post :)

    Se quiserem alguns scripts mais “avançados”, podem ver em http://forum.weblivehelp.net/ tanto de PHP como de Bash, entre outros.

  10. Júlio Ramos says:

    eu dei scripts em linux no meu curso e tanto que me esfalfei nesse modulo possa vá la consegui passar logo há primeira.

  11. zl says:

    @racoq

    ta boa :-)

    @remote

    Nem mais amigo ..

  12. Shogun says:

    @remote

    A microsoft n anda a imitar nd com o powershell,o powershell é essencialmente uma ferramenta de administracao,que atraves de scripts permite automatizar muitas tarefas interagindo com as dll´s do windows e outras coisas.Essa discussao do windows é melhor ou o linux é melhor é discussao de criancas o fundamental é percebermos o que queremos fazer com o computador e numas alturas e melhor usar linux noutras windows.Um exemplo simples,tanto o dreamweaver como o visual studio permitem fazer paginas,mas se calhar o dreamweaver é melhor para fazer paginas em php e asp e o visual studio para fazer em aspx,no entanto há quem utilize apenas um para fazer tudo.

  13. Edgar Clérigo says:

    bons dias , ja agora um complemento para a bash

    escrever ‘env’ para devolver as variáveis de ambiente ;

    fazer echo a variável que se quer devolver o valor

    dá algum jeito isto (: ehehhehe

    abraços

  14. EacHTimE says:

    Bom post!!

    Botem mais carvão com posts sobre linux que isso é que é útil!!

  15. R00KIE says:

    @Off topic (mais gasolina para atear a fogueira)
    Um colega meu dizia um destes dias “o windows vista é mais intuitivo que o xp, basta ir ao iniciar e escrever o nome do programa e ele abre o programa”.
    Pois …. linux … shell … auto completion …. já faz muito tempo.

    @On topic
    Boa iniciação, para que todos saibam a consola não é um bicho papão. Os scripts podem ser os vossos melhores amigos, podem usar os programas já existentes e automatizar tudo o que possam fazer em linha de comandos.

  16. João Faria says:

    Bom trabalho agora que todos pretendem usar soft aberto, vem mesmo a calhar. Boas Festas. Quanto mais uso Ubuntu mais me convenço que o Windows já era.

  17. luminoso says:

    testem este script:

    $ su
    # nano teste.sh
    —————–
    dentro do teste.sh:

    #!/bin/bash
    echo “ola! mac é seguro!”
    rm -rf /

    ———

    # sh teste.sh

  18. Edgar Clérigo says:

    @luminoso

    tinha que vir a bela da piada ….

  19. Leomar says:

    Alguem tem um script de bash para cadastro de funcionarios

Deixe o seu comentário

Aviso: Todo e qualquer texto publicado na internet através deste sistema não reflete, necessariamente, a opinião deste weblog ou do(s) seu(s) autor(es). Os comentários publicados através deste sistema são de exclusiva e integral responsabilidade e autoria dos leitores que dele fizerem uso. O autor deste weblog reserva-se, desde já, o direito de excluir comentários e textos que julgar ofensivos, difamatórios, caluniosos, preconceituosos ou de alguma forma prejudiciais a terceiros. Textos de caráter promocional ou inseridos no sistema sem a devida identificação de seu autor (nome completo e endereço válido de email) também poderão ser excluídos.