我已经针对论坛上给出的问题尝试了不同的解决方案,但对指定的分隔符 %$%
不起作用,我需要从包含 200 多列的文件中提取一个特定的列。
我尝试了以下方法:
awk -F"%$%" '{print $1}' sample.txt > outfile.txt
awk 'gsub("%$%",":")' sample.txt > outfile.txt
最佳答案
符号$
是正则表达式中的特殊字符,所以需要用\
转义,这也是字符串字面量的特殊字符,所以需要再次转义。
所以,最后我们有:
$ cat sample
ghkjlj;lk%$%23e;k32poek%$%eqdje2oijd%$%xrgtdy5h
$ awk -F'%\\$%' '{print $1}' sample
ghkjlj;lk
关于linux - 从具有多字符分隔符的文本文件中提取列,即 "%$%",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47708799/