我如何sed
、grep
、awk
、tr
或 bash 脚本中的任何内容
获取
' 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';
}
最佳答案
如果不需要输出中的空行,这个带“环顾四周”的 grep 将给出你想要的:
grep -Po "(?<=')[^.']*(?=\.)" file
刚刚看到你用 awk 标记了问题
然后试试这个 awk 输出中的那些空行:
awk -F"['.]" 'NF>2{print $2}' file
(awk 单行代码适用于您在示例中的输入)
关于linux - 获取两个特殊字符之间的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15635321/