Eu tenho uma variável cujo valor é encontrado usando a consulta sql.
Quero remover o novo caractere de linha dessa variável, pois quero concatenar essa variável com a outra. Abaixo está o código:
dt=`sqlplus -s user/pwd@servicename <<EOF
set feedback off;
set head off;
select replace(to_char((sysdate-7),'YYYYMonDD')||'_'||to_char((sysdate-1),'YYYYMonDD'),chr(10), '') from dual;
exit;
EOF`
echo "test $dt"
${var//a/}
, não precisa usar o último/
,${var//a}
fará exatamente o mesmo.Parece que você precisa de "tr", algo como:
man tr para detalhes, como sempre
fonte
Este trabalho no Linux (bash):
No Linux, ou em outros sistemas com o utilitário de data do GNU, isso também funciona para obter esse valor para dt: (sem envolver o Oracle ...)
fonte
echo 'puts [clock format [clock scan "-1 week"] -format %Y%b%d]_[clock format [clock scan yesterday] -format %Y%b%d]' | tclsh
do manual Oracle sqlplus
DEFINIR PÁGINAS [IZE] {14 | n} Define o número de linhas em cada página de saída. Você pode definir PAGESIZE como zero para suprimir todos os títulos, quebras de página, títulos, a linha em branco inicial e outras informações de formatação.
adicione um
set pagesize 0
ao seu script para evitar uma linha em branco do cabeçalho.para a maioria dos meus scripts, uso as configurações no seguinte trecho de código:
fonte