====== Variáveis em bash ====== Understand the concept of a variable and how to do every process to create your own. ===== O que é uma variável? ===== Uma variável como o próprio nome já diz serve para armazenar conteúdos variados em um local/espaço da memória, ao invés de utilizarmos números para fazer a sua chamada, usamos tags/nomes! Assim fica mais fácil fazer a chamada não é? Variáveis em shell podem receber qualquer conteúdo! desde uma simples string/texto, números, status de saída de um comando e retorno da saída. ===== Quando devemos usar uma variável? ===== Em qualquer momento! variáveis são legais de se trabalhar, vamos supor como exemplo eu precisasse fazer a chamada de um diretório específico 4 vezes! Seria viável eu ficar digitando sempre esse diretório manual? não seria falho se em um futuro eu resolvesse alterar o diretório em si? E se eu esquecer de alterar algum caminho é falha na certa! Para isto eu uso uma variável para me ajudar! # Declaração DIRETORIO="/home/slackjeff/diretorio_local" # Se diretório não existe, crie. if [ ! -d "$DIRETORIO" ]; then mkdir "$DIRETORIO" fi cd "$DIRETORIO" echo "Estou no diretório '$DIRETORIO'" Perceba que eu fiz 4 vezes a mesma chamada do diretório! ficou mais viável usar uma variável para isto, assim se precisar eu preciso apenas trocar o conteúdo da variável não precisando mexer em mais nada no código. O mesmo vale para uma mensagem por exemplo onde é repetitiva ou até mesmo comprida! Para este exemplo vou usar o dialog. # HEREDOCUMENT texto=$( cat << FECHA OI seja muito bem vindo ao meu site cara! Aqui você vai encontrar tudo menos dinheiro. FECHA ) # Imprimindo na telinha! dialog --msgbox "$texto" 0 0 ===== Tipos de variáveis ===== Em shell não existe variáveis do tipo (char, int, float, double). Aqui é tudo string sem dó sem piedade! nem se preocupe... Só programe. ===== Declarando uma variável ===== Em shell não precisamos declarar variáveis! mas se acostume com o jeito da cha- mada :D A ordem para declarar um variável é: . Nota que o nome da varíavel não pode conter nenhum caractere especial como: '@-|&*#$\/' entre outros, não podem também começar com números e ter espaços... Caso o nome da sua variável conter espaços substitua por _ 'underline', sim! underline pode. Não use - 'traço' que não vai rolar, ele é um caractere especial. Após declarar um BOM nome de variável você deve inserir o sinal de '=' e o valor/conteúdo. Vamos para alguns exemplos: **Declarações CORRETAS** tamanho_calca_42="Mentira nem uso 42" nome="Jefferson" _Esta_e_minha_rua="Rua pedro dos santos" NumeroDaMinhaCasa="102" CPF_E_RG="CPF: xxxxxxxx-xxxxxx.xx RG: y.yyy.yyyy" **Declarações ERRADAS** echo="Jeffa" Funciona mais é reservado. ls="Deu" Funciona mais é reservado *Nom&="Paula" 1nome="Fernanda" rua-do-cabra="Pedrino nicolau" linguagem=favorita="Shell" MEU PINTINHO AMARELINHO="Vish isso não vai dar certo" Tome cuidado, se você é iniciante e fazer a declaração errada não vai worka. O shell vai reclamar, sim! ele é um cara bem zangado com más declarações. Então se liga, sem caracteres especiais, númeração de inicio e espaços. ====== Sources ====== * Originally written by [[wiki:user:slackjeff | Slackjeff]] {{tag>howtos template}}