2016-03-30 151 views
0

我在使用shell腳本中的命令替換時遇到問題。我瀏覽過並嘗試過所有的變體,包括back-ticks和$()設置。無法將命令保存到shell腳本中的變量中

我可以在終端中回顯命令,但不能將此命令保存到$ token。

這工作:

echo $AUTH | grep -o "hbapi.*[^\"]" 

這不:

token=$($AUTH | grep -o "hbapi.*[^\"]") 

其中$ AUTH是JSON,我需要從用grep刪除某些字符。我在bash shell中執行.sh腳本。

我是shell腳本編程的新手,所以有任何建議,將不勝感激!

感謝,

山姆

回答

3

你已經忘了使用echo

token=$(echo $AUTH | grep -o "hbapi.*[^\"]") 
+0

你應該把變量引用在雙引號('回聲 「$ AUTH」'),以避免意外的變化由於分詞和/或通配符擴展。 –

相關問題