当前位置: 技术问答>linux和unix
sed命令的模式匹配
来源: 互联网 发布时间:2017-05-27
本文导语: 我是新手,遇到一行seq匹配的脚本读不懂,想请人帮我解释一下: QPE_CFG="$(echo "$QPE_CFG" | sed 's/[[:space:]]*["'"'"']*-no-qtopiadesktop["'"'"']*[[:space:]]*/ /')" 其中的's/[[:space:]]*["'"'"']*-no-qtopiadesktop["'"'"']*[[:space:]]*/ /')"好复杂啊,读不...
我是新手,遇到一行seq匹配的脚本读不懂,想请人帮我解释一下:
QPE_CFG="$(echo "$QPE_CFG" | sed 's/[[:space:]]*["'"'"']*-no-qtopiadesktop["'"'"']*[[:space:]]*/ /')"
其中的's/[[:space:]]*["'"'"']*-no-qtopiadesktop["'"'"']*[[:space:]]*/ /')"好复杂啊,读不太懂。
|
QPE_CFG=`echo "$QPE_CFG" | sed -e "s/[ t]*["']*-no-qtopiadesktop["']*[ t]*/ /"`
|
[:space:] 表示素有空白字符,包括换行 ,空格 还有制表符
["'"'"'] 表示一个单引号或者双引号。
也就是把:
空白+单引号或双引号(可能多个)+-no-qtopiadesktop+单引号或双引号(可能多个)+空白
替换为空
["'"'"'] 表示一个单引号或者双引号。
也就是把:
空白+单引号或双引号(可能多个)+-no-qtopiadesktop+单引号或双引号(可能多个)+空白
替换为空
|
楼主是说 's/[[:space:]]*["'"'"']*-no-qtopiadesktop["'"'"']*[[:space:]]*/ /' 吧?你的后面多了个)"
其实就是把前面一大堆换成成空格,就是当中的通配符比较复杂,二楼回答不错
其实就是把前面一大堆换成成空格,就是当中的通配符比较复杂,二楼回答不错