Brincando com ForeGround e BackGround.

Um recurso muito bacana do shell, é a possibilidade de você alternar entre vários programas usando um único terminal. Você pode de forma rápida e eficaz usando somente um terminal abrir um player de mp3, copiar arquivos grandes, navegar em ftp baixar músicas e ainda editar os seus arquivos.

Para podermos fazer isso com segurança e não deixar que vire um aborrecimento, é necessário entender o que significa background e foreground. Background é quando você "joga" ou "coloca" um processo que está rodando em sua maquina para continuar rodando "escondido" até o momento que você o invoque novamente para satisfazer sua vontade. O ato de chamar de volta um processo que você mandou para background é exatamente o foreground, ou seja, recuperar ou trazer para a frente um processo que estava rodando lá no fundo ou escondido. Mas como fazer isso com uma shell?

Digamos que você queira executar todas as musicas uma por uma de uma pasta de música pelo terminal com o comando

$mpg123 *

não poderá fazer mais nada com ele, pois o mesmo está ocupado devido ao programa que está rodando neste exato momento, como pode ver na figura abaixo.



É ai que entra o background, para mandar o programa e liberar logo em seguida o terminal para você continuar usando-o, basta fazer o seguinte:

$mpg123 musica.mp3 &

Agora sim, o seu processo está rodando em backgroun. Quer ver? Digite "$jobs" no terminal para ver o processo que está rodando no fundo. Agora vamos abrir outro programa e manda-lo para background

$vi arquivo.txt &

se você digitar jobs verá como os programas se encontram agora.



O mpg123 está executando a musica neste momento (acredito que esteja tocando no seu computador agora) e o editor vi está parado na espera de chama-lo de volta para que possa editar calmamente o seu arquivo. Para chamar de volta o editor vi basta digitar o "$fg" seguido do numero do processo que é o número que se encontra entre os cochetes.

$ fg 2

Pronto, temos o editor de volta e você pode usa-lo normalmente. A música que está tocando você não gosta, então vamos troca-la. Para isso teremos que trazer do background para o foreground pular a música e logo em seguida manda-la de volta para background, deixando o terminal livre novamente, no shell faremos assim:

$fg

^C e ^Z

$bg

Ufa!!! :P

Calma que vou explicar. No momento só temos um processo em background que é justamente o "mpg123", quando temos somente um processo em bg basta um "$fg" para traze-lo de volta. Com o ^C pulamos para a proxima música e com ^Z pausamos o processo que logo em seguida será envia novamente para background com o comando "$bg".

Se tivessemos mais de um processo em background, era só usar o número correspondente a cada um (entre conchetes) para chamar o processo em específico. Devo deixar bem claro que certos programas que abrem em modo gráficos com o uso de algum gerenciador de janelas não funcionam. É o caso do mplayer e do mozilla.

Na verdade a intenção é mostrar como usar, com um pouco de prática em breve você estará fazendo um uso bem melhor de uma shell aberta, seja em modo gráfico ou modo texto, valeu.



Franklin Anderson de Oliveira Souza <[email protected]> - Merovigiam

É garantida a permissão para copiar, distribuir e/ou modificar este documento sobre os termos da GNU Free Documentation Licence. 2004


Hosted by www.Geocities.ws

Hosted by www.Geocities.ws

1