Linux sed选项出错

Linux sed选项出错,linux,sed,Linux,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表

我在脚本中创建了一个脚本我有一个变量

 ... 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表达式第1条,第8条:命令项:`/'


尝试使用双引号来允许变量替换,并使用大括号来获取您的env var名称

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

您需要在sed中使用双引号来展开shell变量