linux – 获取两个特殊字符之间的字符串

如何在bash脚本中使用sed,grep,awk,tr或其他任何内容来获取每行之间的第一个字符

'      and      .    

从这个文件. (该字符是单引号和句点).这真的很难,我喜欢你甚至在尝试.

这样命令产生:

理想输出:

orinak
pchovi
orinak

xpt

moon

在以下文件中:

class GI_DnConstants {
        const BO_DOMAIN_NAME = 'orinak.backoffice.domain.com';
        const EX_DOMAIN_NAME = 'pchovi.extranet.domain.com';
        const WS_DOMAIN_NAME = 'orinak.www.domain.com';
        const PT_DOMAIN_NAME = '.partner.domain.com';
        const PTS_DOMAIN_NAME = 'xpt.partners.domain.com';
        const WS_SECURE_DOMAIN_NAME = '.secure.domain.com';
        const IMG_DOMAIN_NAME = 'moon.images.domain.com';
}

解决方法:

如果输出中的空行不是必需的,那么带有“look-around”的grep将给出你想要的:

grep -Po "(?<=')[^.']*(?=\.)" file

刚看到你用awk标记了这个问题

然后用输出中的那些空行尝试这个awk:

awk -F"['.]" 'NF>2{print $2}' file

(例如,awk单行程适用于您的输入)

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...