sexta-feira, 22 de novembro de 2013

EDITAR OS SCRIPTS LINUX

Editar os scripts Linux

Antes de escrevermos novos scripts, temos que saber que já existem alguns scripts criados em seu usuário. Esses scripts foram colocados em seu diretório pessoal quando sua conta foi criada, e são usados ​​para configurar o comportamento de suas sessões no computador. Você pode editar esses scripts para mudar as coisas.
Neste artigo, vamos olhar alguns desses scripts e aprender alguns novos e importantes conceitos sobre o shell.

Comandos, comandos em todos o lugares


Até agora, nós realmente não discutimos exatamente o que os comandos são . Os comandos podem ser várias coisas diferentes. Alguns comandos são construídos embutidos no próprio shell. Ou seja, a shell entende automaticamente alguns comandos por conta própria. O comando cd e comandos pwd estão neste grupo .

Comandos implementadas no próprio shell são chamados shell builtins. Para ver uma lista dos comandos embutidos no bash, use o comando help.
O segundo tipo de comandos são os programas executáveis. A maioria dos comandos estão neste grupo . Programas executáveis ​​são todos os arquivos nos diretórios incluídos no seu path.
Os dois últimos grupos de comandos estão contidos em seu ambiente de tempo de execução. Durante a sessão, o sistema está mantendo uma quantidade de informações sobre o mundo em sua memória. Estas informações compreende e é chamada de ambiente.
 O ambiente contém informações como caminho, o nome de usuário, o nome do arquivo onde as mensagens são entregues, e muito mais. Você pode ver uma lista completa do que está no ambiente com o comando set.
Os dois tipos de comandos contidos no ambiente são aliases e funções de shell.

Aliases (Apelidos)

Agora, antes de tornar-se demasiado confuso sobre o assunto, vamos fazer um alias. Verifique se você está em seu diretório home. Usando seu editor de texto favorito , abra o arquivo bash_profile e adicionar esta linha ao final do arquivo. :

[alex@linux alex]$ alias l='ls -l'

alias l='ls -l'

O arquivo .bash_profile é um shell script que é executada cada vez que você loga no sistema. Pelo fato de se adicionar um comando alias ao arquivo, nós criamos um novo comando chamado "l" o qual executa "ls -l". 
Para experimentar o novo comando, faça logout e faça login novamente. Usando esta técnica, pode-se criar qualquer número de comandos customizados para si. Aqui está um outro que você pode experimentar:


[alex@linux alex]$ alias today='date +"%A, %B %-d, %Y"'

alias today='date +"%A, %B %-d, %Y"'

Este alias criará um novo comando chamado "today" que irá exibir a data de hoje com um bom formato.
A propósito, o comando alias é apenas um shell builtin. Pode-se criar os aliases diretamente pela linha de comando prompt; porém eles apenas permanecerão efetivos durante a atual sessão shell. For example:

[alex@linux alex]$ alias l='ls -l'

Shell Function

     Aliases são boas para comandos muito simples, mas se quisermos criar algo mais complexo, devemos utilizar uma shell function. As shell functions podem ser pensadascomo "scripts dentro de scripts" ou pequenas sub-scripts.
Vamos experimentar alguma. Abra .bash_profile com o editor de texto novamente  e substitua o alias por "today" como segue:

function today {
    echo "Today's date is:"
    date +"%A, %B %-d, %Y"
}

Acredite ou não, function é um shell builtin também, e como acontece com alias, você pode entrar com um shell functions diretamente através do comando prompt.

[alex@linux alex]$ function today {
> echo "Today's date is:"
> date +"%A, %B %-d, %Y"
> }
[alex@linux alex]$

Comando type

Desde que existem muitos tipos de comandos, pode ser que torne-se confuso para dizer qual é um alias, um shell function ou um arquivo executável. Para determinar o que o script é, utiliza-se o comando type, que exibirá o tipo do comando. É utilizado assim:

[alex@linux alex]$ type nome_comando

.bashrc

Apesar que colocar os aliases e as shell functions na .bash_profile funcionará, não é considerado um bom procedimento. Existe um diretório separado para isto chamado .bashrc que se destina a ser usado para tais coisas. 
Pode-se perceber um pedaço de código perto do início do seu bash_profile que é algo como isto.:

if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

Este fragmento de script verifica se há um arquivo .bashrc em seu diretório home. Se algum for encontrado, então o script lerá o seu conteúdo. Se seu código estiver em seu .bash_profile, você deve editar o arquivo .bashrc e colocar lá os seus aliases e seus shell functions.

Nenhum comentário:

Postar um comentário