shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Saída de erro similar a expansão de parâmetros do bas


From: Julio C. Neves
Subject: Re: [shell-script] Saída de erro similar a expansão de parâmetros do bash
Date: Fri, 2 Mar 2018 12:07:53 -0300

Vamos esmiuçar o que vc fez:

$ ${param:?palavra}
bash: param: palavra

Nesse exemplo param é o nome de uma variável que, caso não esteja definida, será dada a msg de erro palavra. Tb poderia ser:

$ : ${param:?A variável \$param não está definida}  # Prefiro usar expansão com um cmd e o cmd : não faz nada
bash: param: A variável $param não está definida

Continuando a resposta se isso estivesse dentro do script chamado scrp.sh a msg de erro seria:

scrp.sh: param: A variável $param não está definida

Ou seja o primeiro campo é o nome do prog (no prompt é o bash), o segundo o nome da variável e o terceiro a msg de erro, assim sendo, para fazer sem expansão de parâmetros (que é mais rápida), vc deveria fazer:

[[ $Parm ]] || echo $0: Parm: MSG DE ERRO >&2





Abraços,
Julio

» Não tem tempo para fazer um curso presencial?
» Na sua cidade não tem nenhum bom curso de Linux?
» O treinamento está muito caro?

Ministramos um excelente treinamento de Shell,
no formato EAD. Veja os detalhes aqui.

Damos treinamento em sua empresa com certificado
e nota fiscal por um preço, no mínimo, 50% abaixo
de qualquer curso.

​​
Nosso time de instrutores in company é formado somente por
autores
​ ​
de Best Sellers
​ ​
​laureados ​sobre os temas. P. exemplo:

Shell básico e Programação em Shell Julio Neves
Bacula Heitor Medrado
Zabbix Adail Host
Produção Gráfica e Videografismo Cadunico









Em 1 de março de 2018 20:35, Terminal Root address@hidden [shell-script] <address@hidden> escreveu:
 

Salve, galera!

Seguinte, como posso "emular" a saída de erro do comando:

$ ${param:?palavra}
bash: param: palavra

Tô tentando verificar a saída de erro similar com if e não consigo, ex.:

$ [[ -z "$param" ]] && echo palavra 1>&2
palavra

Queria que saísse igual ao padrão: bash: param: palavra



reply via email to

[Prev in Thread] Current Thread [Next in Thread]