2015-11-10 23 views
0

我想回顯/重定向到文件兩個或三個變量和星號; 但是,只要我試圖包含多於一個,那麼我的變量就會消失。在bash中回顯多個變量+星號

從文件加載變量。 VAR:

CMD=/home/user1/command.sh 
HOUR=17 
MN=00 

這裏是我的腳本的一個片段:

#!/bin/bash 
. var 
    if [ "${MN}" == "00" ]; 
    then 
    MN=0 
    fi 

echo "${MN} ${HOUR} * * * user1 ${CMD}" >> ./test.log 

輸出類似於以下不包括所有的變量:

* * * root /home/user1/command.sh 

看來,對於一些從文件中加載這些變量的原因;這些不能被重複使用。 當我手動設置的腳本本身的一部分,輸出如下正確:

0 17 * * * root /home/user1/command.sh 

任何幫助,將不勝感激,

非常感謝, AL。

+4

檢查'var'文件是否有DOS行尾? –

+0

請參閱[bash info wiki](http://stackoverflow.com/tags/bash/info)上的第1項。 –

+0

在腳本中添加文件var的完整路徑。 – Cyrus

回答

0

Crontab執行該腳本不在/ home/user1 /文件夾中。

所以你需要使用/ home /用戶1/VAR變量包括或做

cd /home/user1/ 

之前包括與變量文件。