![剪切字符串并输入结果本身](https://linux22.com/image/114813/%E5%89%AA%E5%88%87%E5%AD%97%E7%AC%A6%E4%B8%B2%E5%B9%B6%E8%BE%93%E5%85%A5%E7%BB%93%E6%9E%9C%E6%9C%AC%E8%BA%AB.png)
我有一个包含以下示例的文件 cve.txt:
delta.x
alpha.tri
blue.zia
我想将字符串剪切到点并将其自身放置为:
delta.x|delta
答案1
$ awk -F. '{ print $0"|"$1}' input
delta.x|delta
alpha.tri|alpha
blue.zia|blue
我们告诉awk
它.
是字段分隔符,然后按照您所描述的简单print
语句来组合输出。 $0
是输入线;$1
是第一个字段(即第一个字段之前的所有内容.
)。
答案2
sed方法:
sed 's/\([^.]*\)\.[^.]*/&|\1/' file
输出:
delta.x|delta
alpha.tri|alpha
blue.zia|blue
答案3
既然您要求cut
解决方案:
paste -d\| input <(cut -d\. -f1 input)