我有一个这样的文件,我需要|
在文件中的每个数字之前放置一个分隔符:。
输入:
sg_fxops_mm hello 2324
sg_fxops_cf 340
G_buc_call 4234
SG_buc_commloan 53465
SG_buc_call_chg 1
预期输出:
sg_fxops_mm hello | 2324
sg_fxops_cf | 340
G_buc_call | 4234
SG_buc_commloan | 53465
SG_buc_call_chg | 1
答案1
捕获第一个数字,将其替换为|
捕获的数字:
sed -e 's/\([0-9]\)/| \1/'
答案2
通过 GNUawk
设置 FS(不仅仅是空格)和 OFS(|
空格之间)你可以得到它。
awk -v FS='[[:blank:]]{2,}' '{print $1, $2}' OFS=" | " file
sg_fxops_mm hello | 2324
sg_fxops_cf | 340
G_buc_call | 4234
SG_buc_commloan | 53465
SG_buc_call_chg | 1