SED?在每行的分隔符之前大写所有字母

时间:2013-10-19 08:52:01

标签: scripting sed capitalization

我有一个带有随机字符串的文件,在';'的分隔符之前,如下所示。

blahDI-blah.john;fdfds;hgdh
DNSK-ECAA.paul;ghdfdgd;fdsd

如何在分隔符之前大写每行上的所有字母,结果将是:

BLAHDI-BLAH.JOHN;fdfds;hgdh
DNSK-ECAA.PAUL;ghdfdgd;fdsd

一如既往地谢谢! 史蒂夫。

2 个答案:

答案 0 :(得分:1)

使用GNU sed的一种方法:

sed -r 's/([^;]+)/\U\1/' file

答案 1 :(得分:0)

您可以使用awk

执行此操作
awk -F\; '{$1=toupper($1)}1' OFS=\; file
BLAHDI-BLAH.JOHN;fdfds;hgdh
DNSK-ECAA.PAUL;ghdfdgd;fdsd