bash

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa


Bash

Bash screenshot.png
Bash em execução
Desenvolvedor Chet Ramey (Projecto GNU)
Versão estável 4.1 (31 de dezembro de 2009; há 108 semanas e 4 dias)
Sistema Operacional Multi plataforma (POSIX)
Gênero(s) Shell
Licença GPL
Página oficial gnu.org/software/bash/ (em inglês) , acessado pela última vez há 107 semanas e 6 dias
Portal das Tecnologias de informação

O bash é um interpretador de comandos, uma espécie de tradutor entre o sistema operacional e o usuário, normalmente conhecido como shell. Permite a execução de seqüências de comandos direto no prompt do sistema ou escritas em arquivos de texto, conhecidos como shell scripts.

Exemplo simples de um shell script em bash:

#!/bin/bash   
#indica o interpretador dos comandos
# trechos precedidos por '#" são ignorados!
echo "Olá {$USER}!"

Não há muito sentido em fazer um shell script contendo um só comando, mas este é um exemplo bem básico. No Linux o script tem que ter permissão de execução, isto pode ser feito com o comando chmod, para exibir um manual do bash ou mesmo do comando 'chmod', digite na linha de comando 'man bash' ou 'man chmod' (sem aspas).

Índice

[editar] Histórico do Bash

O Bash é o shell desenvolvido para o projecto GNU, da Free Software Foundation, que se tornou padrão nas várias distribuições Linux. Pode ser usado também com outros sistemas operacionais, como o Unix; há versões para o sistema Microsoft Windows₢ (como o do projeto Cygwin), algumas com as bibliotecas necessárias embutidas no binário (no caso do winbash; o que torna desnecessário instalar o ambiente POSIX inteiro para ter apenas o bash). É compatível com o Bourne shell (sh), incorporando os melhores recursos do C shell (csh) e do Korn Shell (ksh).

[editar] Arquivos de Ambiente

Você pode customizar seu ambiente do bash utilizando alguns arquivos como:

  • .bash_profile
  • .bashrc
  • /etc/profile

[editar] .bash_profile

Este arquivo fica localizado no diretório pessoal de cada usuário. É executado por shells que usam autenticação (nome e senha). Ele contém comandos que são executados para o usuário no momento do login no sistema após o /etc/profile. Note que este é um arquivo oculto pois tem um "." no inicio do nome.

Por exemplo, colocando a linha abaixo cria um apelido para o comando "ls --color=auto" usando ls, assim toda vez que você digitar ls será mostrada a listagem colorida:

alias ls='ls --colors=auto' 

[editar] .bashrc

Possui as mesmas características do .bash_profile mas é executado por shells que não requerem autenticação (como uma seção de terminal no X).

Os comandos deste arquivo são executados no momento que o usuário inicia um shell com as características acima. Note que este é um arquivo oculto pois tem um "." no inicio do nome.

[editar] /etc/profile

Este arquivo contém comandos que são executados para todos os usuários do sistema no momento de autenticação. Somente o usuário root pode ter permissão para modificar este arquivo.

Este arquivo é lido antes do arquivo de configuração pessoal de cada usuário (.profile(para usuário root) e .bash_profile). Pode ser utilizado caso seja necessário fazer alguma personalização do ambiente para todos os usuarios que utilizam o computador.

Quando é carregado através de um shell que requer autenticação (nome e senha), o bash procura estes arquivos em sequência e executa os comandos contidos, caso existam:

  • . /etc/profile
  • . ~/.bash_profile
  • . ~/.bash_login
  • . ~/.profile

Interrompe a pesquisa assim que localiza o primeiro arquivo no diretório do usuário (usando a sequência acima). Por exemplo, se tem o arquivo ~/.bash_login e ~/.bash_profile no seu diretório de usuário, processará o /etc/profile e após isto o ~/.bash_profile, mas nunca processará o ~/.bash_login (a menos que o ~/.bash_profile seja apagado ou renomeado).

Caso o bash seja carregado através de um shell que não requer autenticação (um terminal no X, por exemplo), o seguinte arquivo é executado: ~/.bashrc.

Observação: Nos sistemas Debian, o perfil do usuário root está configurado no arquivo /root/.profile. A razão disto é porque se o bash for carregado através do comando sh, fará a inicialização clássica deste shell ao ler primeiro o arquivo /etc/profile e após o ~/.profile e ignora o .bash_profile e o .bashrc que são arquivos de configuração usados somente pelo Bash. Exemplo, ao inserir a linha mesg y no arquivo /etc/profile permite que todos os usuários do sistema recebam pedidos de 'talk' de outros usuários. Caso um usuário não quiser receber pedidos de 'talk', basta somente adicionar a linha mesg n no arquivo pessoal .bash_profile

[editar] Ver também

[editar] Ligações externas


 ver·editar  Portal do LinuxTux.svg

Arch · Debian · Fedora · Ubuntu · Mandriva · Linux Mint · OpenSUSE · PCLinuxOS · Puppy · Sabayon · Slackware Linux · Kurumin · Big Linux · Poseidon Linux · Ekaaty Linux · DreamLinux

Ferramentas pessoais
Espaços nominais
Variantes
Ações
Navegação
Colaboração
Imprimir/exportar
Ferramentas
Noutras línguas