passa o parâmetro para um script de shell, mas por que existem dois valores?

1

Eu tenho alguns problemas com um script de shell, pls help me, thx.

Eu crio um arquivo de script de shell chamado 'deploy.sh', e toda vez que eu chamo esse script com um parâmetro se parece com '20180208', '20180214' (formato de data yyyyMMdd) ... etc.

# sh deploy.sh 20180208

O conteúdo para shell como abaixo (eu escrevi algumas linhas para teste, mas eu encontrei o problema):

#!/bin/sh

# DEFINE
UPLOAD_DATE=$1
# OUTPUT
SH_LOG=/home/jin.huang/logs/execsh.log

Deploy()
{
    echo $1
    echo $UPLOAD_DATE
}
Deploy>>$SH_LOG

Eu passei o 20180208 para o deploy.sh, mas consegui dois resultados para $ 1:

echo $1
echo "$1"

estas impressões vazias na tela;

echo $UPLOAD_DATE
echo "$UPLOAD_DATE"

imprimir "20180208" na tela.

por que existem dois resultados?

    
por richard20427176 09.02.2018 / 10:15

0 respostas