当我做echo /$date $hh:$mq[$mr-9]/,/$date 23:59/p时,我得到这个作为/2017-12-31 19:1[4-9]/,/2017-12-31 23:59/p,但是当我做这个sed -n '/$date $hh:$mq[$mr-9]/,/$date 23:59/p' $error_log_file_name时,我得到了这个
gesed:-e表达式#1,char 22:无效范围结束
我哪里出错了有什么建议吗?$error_log_file_name是对的。
发布于 2018-01-02 11:58:43
因为没有引号,$date变量是展开的,而单引号中没有展开,所以比较
echo /$date $hh:$mq[$mr-9]/,/$date 23:59/p
echo "/$date $hh:$mq[$mr-9]/,/$date 23:59/p"
echo '/$date $hh:$mq[$mr-9]/,/$date 23:59/p'此外,如果没有引号,参数就会在空格或制表符上被分割,文件可能会出现全局现象。
https://stackoverflow.com/questions/48060512
复制相似问题