2. Bash¶
2.1. Executando listas de comandos¶
- xeyes & xeyes: executa os dois comandos ao mesmo tempo
- xeyes ; xeyes: executa um, espera acabar, e depois o outro
- Lista E: comando1 && comando2 o comando2 é executado se e somente se a execução do comando1 terminou com sucesso.
- Lista OU: comando1 || comando2 o comando2 é executado se e somente se a execução do comando1 não terminou com sucesso.
2.2. Outros comandos¶
- fg: coloca em primeiro plano o último processo em segundo plano
- history
- pwd
- alias
- Ctrl+D: Fecha a entrada padrão;
- pushd: Empilha diretórios, útil pra navegar pelo filesystem e depois voltar onde estava com popd.
2.3. Loops¶
for i in $(ls); do
echo item: $i
done
for i in `seq 1 10`; do
echo $i
done
2.4. Condicional¶
2.4.1. If¶
if {}
2.4.2. Case¶
case $ANIMAL in
cavalo | cachorro | gato) echo -n "quatro";;
homem | canguru) echo -n "duas";;
\*) echo -n "um número desconhecido de";;
esac
echo "pernas"
2.4.3. Select¶
select PROG in xeyes fortune break; do $PROG; done
2.5. Funções¶
function soma {
bc $1 + $2
}
2.6. Outros assuntos¶
- Variáveis de ambiente, export
Obs: o shell expande os comandos antes de começar a executar. Exemplo:
$ alias zoio='xeyes -fg yellow' && zoio
zsh: command not found: zoio
$ alias zoio='xeyes -fg black'; zoio # abre xeyes com yellow
. script
vs./script
: (. = source) executa no shell atual, o./
abre um novo bash.