2014-02-16 26 views
0

我試着寫bash腳本,包含TMUX命令:在Tmux腳本中使用參數?

#!/bin/bash 
# script.sh 
tmux -2 new-session -s name 'another_script.sh param' 

#!/bin/bash 
# another_script.sh 
echo $1 > test 

這將是好的,如果another_script.sh已經用硬編碼參數值的方式執行

tmux -2 new-session -s name 'another_script.sh param_value' 

但是,當我「M試圖用一個可變$1未被傳遞到參數的

tmux -2 new-session -s name 'another_script.sh $1' 

有人知道我在做什麼錯嗎?

+1

你確定,它不是'他們是不同的 – BMW

回答

0

變量不會用單引號擴展。使用雙引號來代替:

tmux -2 new-session -s name "another_script.sh $1" 

PS:shellcheck將有自動告訴你這一點。

+0

你是對的,謝謝。你能解釋一下(或者參考文檔)bash中','的區別嗎? – erthalion

+0

@erthalion你可以查看http://mywiki.wooledge.org/Quotes –