Páginas

domingo, 18 de novembro de 2012

[LPI-101] - Conhecendo o Shell

Bom pessoal, estou retomando meus estudos em Linux e gostaria de compartilhar estes estudos. Como leram no Titulo do Post, vou falar sobre o Shell do Linux. Como todo computador necessita de uma interface humana, no Linux a mais simples é o Shell.

Em termos técnicos, o Shell é um interpretador de comandos que analisa o texto digitado na linha de comandos e os executa produzindo algum resultado.


Prompt do Shell




Nome do super usuário ->  ROOT (Tradução Raiz)

Tipos de Shell:

C-Shell
Bash (Bourne Again Shell) -> Padrão das distribuições Linux mais utilizadas
K-Shell (Korn Shell)

Variáveis ambientais: Durante a execução do Bash são mantidas algumas variáveis especiais que contêm alguma informação importante para a execução do Shell. Estas variáveis são carregadas no inicio da execução do Bash e também podem ser configuradas manualmente em qualquer momento.

PS1 -> Prompt String 1
Está variável guarda o conteúdo do prompt de comandos do Bash, quando ele está pronto para receber comandos.

O usuário comum e o super-usuário são prompts do tipo PS1.

PS2 -> Prompt String Extend (Prompt Extendido) 

Exemplo de Prompt:
 * Prompt Case-Sensitive
 Ex.:  \u@\h:\W\$
\u -> usuário
\h -> hostname da maquina
\W -> diretório corrente

Variável PATH: Outra váriavel importante do Shell é o PATH. O PATH guarda uma lista dos diretórios que contêm os programas que você poderá executar sem passar na linha de comandos o caminho completo de sua localização.

Para visualizar os diretórios da variável PATH, digite o comando abaixo no Prompt:
$echo $PATH







Ordem de execução

1. O Comando digitado é um comando interno do interpretador de comandos?
2. Se não for, o comando é um programa executável localizado em algum diretório listado na variável PATH?
3. A localização do comando foi explicitamente declarada?

Visualizando as variáveis: 

uma lista completa das variáveis do Shell poderá ser obtida com o comando abaixo:
$ set

















O Comando "set" visualiza todas as variáveis ambientais.

Criando variáveis:









Ao fazer a criação de variáveis temos que nos atentar ao nome das variáveis. Pois existem palavras reservadas no sistema na qual não podemos utilizar. segue abaixo uma listas das palavras reservadas do sistema:

- case
- do
- done
- elif
- else
- esac
- fi
- for
- function
- if
- in
- select
- then
- until
- while
- time

Quando utilizamos variáveis em alguns caso precisamos utilizar uma sequência de comandos numa mesma linha. O Bash também permite que você entre com uma sequência de comandos numa mesma linha e para isso você deve separar os comandos com o símbolo ; (ponto-e-virgula) . Veja um exemplo abaixo:


Consultando o histórico de comandos do Linux:

$ cat ~/.bash_history

$ history 

$ !!
Executa o ultimo comando digitado que está no history.

$ !n
Executa o comando na linha n no arquivo .bash_history

$ !texto
Executa o comando mais recente que inicia com o texto.
$ !?texto
Executa o comando mais recente que contém o texto.


Bom para verificarmos o Shell que estamos utilizando, digite o comando abaixo:
$ echo $SHELL

Precisamos também conhecer o sentido de três símbolos.

1. O Símbolo ".." (ponto-ponto) é utilizado para fazer referencia a um diretório imediatamente acima do diretório corrente.

2. O Símbolo "." (ponto) é utilizado para fazer referencia ao diretório corrente. é utilizado para executar um comando num diretório que não esteja listado no PATH.

3. O Símbolo "~" (til) é um caminho relativo para o diretório HOME do usuário corrente.


Bom pessoal, o propósito deste post é ajudar aqueles que estão estudando para LPI. Nisso acredito que consegui abordar o básico sobre o assunto no que se refere ao Shell do Linux e algumas funções inerentes ao Bash que é o Shell mais utilizado nas distribuições Linux. Qualquer dúvida sobre o assunto, favor comentar no post para que possa ajudar. Que a Graça e Paz estejam com todos vocês.

Um comentário: