DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

Caracteres Especiais do Shell - Linux Shell Essentials - Parte 4

Veja nesta continuação os caracteres especiais do Shell.

Bem vindo a continuação da nossa série de artigos sobre Linux Shell. Nos artigos anteriores nós vimos como o Shell funciona, quais os principais Shells no mercado e onde encontramos seus arquivos de configuração.

Caracteres Especiais do Shell:

 

            Para atender sua necessidade de ser tanto um interpretador de comandos quanto uma linguagem de programação, o Bash possuí diversos caracteres especiais:

 

Caractere

Finalidade/Significado

Exemplo

~

Home do usuário atual

cd ~

ls -la ~

\

Escape do caractere seguinte:

touch my\*file myfile my1file

(cria um arquivo my*file)

/

Separação de Diretórios

cd /etc/apache2

ls /var/log

$

Variável

echo $PATH

?

Existe um caractere qualquer

ls my?file

'

Cota absoluta

echo 'não substitui: $PATH'

`

Executa comando/Substituição

NOW=`date` ; echo $NOW

Cota dupla

echo “Este é o PATH: $PATH”

*

Qualquer caractere, nenhuma ou várias vezes

ls m*file

&

Envia processo para o background

xeyes&

&&

Operador AND curto-circuíto:

se cmd1 executar com sucesso executa o segundo, senão encerra

echo 1 && echo 2

fake && echo 2

|

Pipe: Redireciona a saída de um comando para outro comando

ls ~ | xargs wc

||

Operador OR curto-circuíto:

Se primeiro comando com sucesso não executa o segundo comando

echo 1 || echo 2

fake || echo 2

;

Executa os comandos em sequência

cmd1; cmd2; cmd3...

echo “O path é: “; echo $PATH

echo “O home é: “; echo $HOME

[]

Range de caracteres

$ touch file1 file2 file3 file4

$ ls file[1-4]

Redireciona saída

Cmd > out_file.txt

Redireciona entrada

Cmd < in_file.txt

 

Valor retornado por comandos:

 

            Como as funções em linguagens de programação, os comandos do GNU/Linux retornam um valor para o Shell. O valor retornado para o Shell indica o status da execução. O valor de retorno zero indica que o comando foi executado com sucesso. Qualquer outro valor indica um erro na execução do comando. O valor retornado fica armazenado na variável de ambiente $?.

 

exemplo:

 

$ echo "Usuario:home_dir:login_shell";grep thiago /etc/passwd |cut -d: -f1,6-7 && echo "estatus do comando: $?"

Usuario:home_dir:login_shell

thiago:/home/thiago:/bin/bash

estatus do comando: 0

$

 

            Perceba: uma vez que a execução do comando anterior teve sucesso o valor de $? foi setado para zero. Caso eu utilize um comando incorreto, inexistente ou que eu não tenho permissão $? receberá um valor diferente de 0.

 

exemplo:

 

$ comando_inexistente ; echo "Erro $?"

-bash: comando_inexistente: command not found

Erro 127

 

$ rm / || echo "Erro. $?"

rm: cannot remove directory `/': �� um diret��rio

Erro. 1

 

$ rm -rf /root || echo "Erro: $?"

rm: cannot chdir from `.' to `/root': Permiss��ão negada

Erro: 1

 

            Espero que esteja gostando da nossa série de artigos sobre o Shell do Linux. Nos vemos no próximo artigo, onde iremos ver como executar diversos comandos na mesma linha de comando.





    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!



Publicidade
Autor
Ticursos.net - Thiago Glauco

Analista de Sistemas, administrador de redes, Desenvolvedor. Certificação: ITIL Linux+ & LPI Gestor de segurança da informação site: www.ticursos.net. Cursos de C, Perl e Linux


Space do autor
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
0   0
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03