[英]Passing a variable to a js script from a shell script
我有以下shell腳本,它針對mongo db啟動了js腳本,我希望將變量傳遞給js文件。 第二個警告是,我需要將此變量存儲在unix框中的某個位置,以作為腳本的最后運行時間。 任何幫助或指針表示贊賞。
# check if previous job still running
if [ -f /tmp/mapreduce_compound.lck ]
then
exit
else
# if no lock file present, create one
touch /tmp/mapreduce_compound.lck
fi
mongo -u xxx mongo1.pilot.dice.com:27017/tracking /usr/local/gemini/mongodb/tracking/mapReduceFunctionsByGroupIdIterative.js > /tmp/mapReduceFunctionsByGroupIdIterative.txt 2>&1
#remove lock file
rm /tmp/process_nightly.lck
您可以使用
--eval 'var param="$yourparam";'
傳遞參數。
注意:這並沒有傳遞太多參數,您的腳本可以使用定義變量,但可以成功。
因此,如果您想為您的shell腳本傳遞第一個參數,則可以執行以下操作:
# check if previous job still running
if [ -f /tmp/mapreduce_compound.lck ]
then
exit
else
# if no lock file present, create one
touch /tmp/mapreduce_compound.lck
fi
MONGOARG=$1
echo $MONGOARG > lastargcalled
mongo -u xxx --eval 'var param="$MONGOARG";' mongo1.pilot.dice.com:27017/tracking /usr/local/gemini/mongodb/tracking/mapReduceFunctionsByGroupIdIterative.js > /tmp/mapReduceFunctionsByGroupIdIterative.txt 2>&1
#remove lock file
rm /tmp/process_nightly.lck
要將其他變量傳遞到javascript文件,請使用process.argv
。 這是節點js文檔的鏈接。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.