Shell - Solaris 10 introdução - Parte II
II - Shell
1- Shell Metacharacters
a) (~) representa o diretório home do usuário logado. Ex: cd ~/dir-teste ou cd ~usuario1
b) (-) representa o diretório anterior que o usuário estava trabalhando. cd - retorna ao diretório que o usuário encontrava-se antes do diretório corrente.
c) (*) representa zero ou mais caracteres. Já é muit conhecido. ex: ls -ls f*
d) (?) representa um único caracter. ex ls -ls usu??io
e ([]) representa um grupo de caracteres. ex: ls [a-j]*, ls [A-Z]*
2 - Variáveis do Korn Shell
Comandos:
Configurar a variável: export VAR=valor
Desconfigurar a variável: unset VAR
Mostrar todas variaveis: set, env ou export
Para mostrar os valores: echo $VAR ou print $VAR
Exemplos:
- echo $SHELL
- set
- export var=/usr/local/
- unset var
3 - Variáveis Default mais utilizadas
- EDITOR
- HOME
- LOGNAME
- PATH
- PS1
- SHELL
4 - Comando history
O comando mostra comandos executados anteriormente. Para listar os comandos para entrar com o comando:
- history n (onde n é o número de comandos a serem listados)
5 - (Re)direcionamentos
Você pode redirecionar o input e output de comandos através dos comandos <>.
Exemplos: comando > filename (saída de dados do comando)
Todo processo criado trabalha com File Descriptos que determinam a entrada, saída e saída de erro de um comando.
0 - stdin - standart command input
1 - stdout - standart command output
2 - stderr - standart command error
Redirecionando saidas de um comando para o limbo:
command 2> /dev/null
6 - Interpretador da linha de comando
Agora é um dos pontos mais importantes de toda essa história, como uma linha de comando é interpretada pelo shell.
Analisando o comando
ps -ef sort -nr more
1. O shell quebra a linha de comando em componetes, chamados de tokens: ps, -ef,,sort,-nr,,more.
2. O shell identifica que ps, sort e more são comandos, que -e e -nr são argumentos e pipe () é uma operaçõa de I/O.
3. baseado na ordem o shell seta o stdout do ps como stdin do sort e stdou do sort como stdin do more.
4. O shell executas os comandos na ordem aplicando os argumentos passados.
0 comentários:
Postar um comentário