next up previous contents
Next: Ajuda on-line Up: Entrada, saída e identificação Previous: Mudança de senha   Sumário

Executando comandos

Existem diversas maneiras de executar comandos em Unix. A mais simples é digitar o nome do comando seguido de ENTER. Os comandos também podem ser executados em seqüência, como em

maquina:~$ ls; pwd; finger aluno; whoami

Os comandos podem também ser executados em segundo plano (background), bastando para isto que o caracter & seja acrescentado ao final do comando. Com isto, o comando será executado e a linha de comando ficará livre para o usuário executar outros comandos concomitantemente àqueles executados em background.

Além disso, os comandos podem ser executados em pipeline, onde a saída de um programa é lançada na entrada e outro. O pipeline de comandos é indicado com o caracter , como mostra o exemplo a seguir.

maquina:~$ ls | grep txt
exemplo1.txt
exemplo2.txt
faq.txt
maquina:~$

Neste exemplo, a lista de todos os arquivos do diretório /home/aluno é lançada na entrada do comando grep txt, que mostra as linhas que combinam com o padrão 'txt'.

Os programas executados via linha de comando são interpretados pelas chamadas shells do sistema, semelhantes ao programa command.com do DOS. As shells do Unix possuem um histórico dos comandos utilizados em uma sessão de login e podem ser visualizados através do comando history. Ao chamar o comando history, é exibida na tela a lista dos últimos comandos executados pelo usuário precedidos do número de ordem do comando e da hora em que cada um foi executado.

Caso o usuário deseje executar novamente um mesmo comando é necessário apenas chamar na shell uma referência ao comando desejado com o caracter ``!'', como mostra o exemplo a seguir, onde o comando de ordem 73 é, no caso, ls.

maquina:~$ !73
ls
documentos/      exemplo2.txt     faq.txt
exemplo1.txt     financas/        linux1.gif
maquina:~$


next up previous contents
Next: Ajuda on-line Up: Entrada, saída e identificação Previous: Mudança de senha   Sumário
Agostinho de M. Brito Jr. 2000-09-02