2013-07-31 32 views
1

我有我的腳本創建的腳本我有可變錯誤與SED選項

... line 1 ... 
... line 2 ... 
NUM_LIGNE_POP3_SERVER_NAME=15 
... line 4 ... 

我執行以下命令:

POP3_SERVER_NAME=$(sed -n '$NUM_LIGNE_POP3_SERVER_NAMEs/.* = //p' /applis/DIAPASON/$REP_INSTALL/conf/mail/$FIC_FILE_MANAGER) 

我有這樣的錯誤:

sed: -e expression n°1, caractère 8: commande inconnue: `/'

+0

你需要在sed擴大shell變量雙引號 – Kent

回答

0

嘗試使用雙引號以允許變量替換,並使用大括號來獲得您的env var名稱。

POP3_SERVER_NAME=$(sed -n "${NUM_LIGNE_POP3_SERVER_NAME}s/.* = //p" /applis/DIAPASON/$REP_INSTALL/conf/mail/$FIC_FILE_MANAGER) 
         ^^      ^  ^
+0

它的工作THX迪迪埃 – Mercer

+0

@Mercer http://stackoverflow.com/help/someone-answers – devnull