如何使用awk将小写字母替换为大写字母“C”?

如何使用awk将小写字母替换为大写字母“C”?,awk,Awk,我有一个包含蛋白质序列的文本文件。我想将所有小写字母替换为大写字母“C”。我怎样才能用awk做到这一点 >1CHE aHKLbMaHc >2HV3 PNMRrYnf >5GH3 LKDeVmqQ desired output >1CHE CHKLCMCHC >2HV3 PNMRCYCC >5GH3 LKDCVCCQ 我将使用sed来实现这一点: sed '/^>/!s/[a-z]/C/g' file.txt 如果您喜欢awk,这里是: awk '

我有一个包含蛋白质序列的文本文件。我想将所有小写字母替换为大写字母“C”。我怎样才能用awk做到这一点

>1CHE
aHKLbMaHc
>2HV3
PNMRrYnf
>5GH3
LKDeVmqQ

desired output

>1CHE
CHKLCMCHC
>2HV3
PNMRCYCC
>5GH3
LKDCVCCQ
我将使用sed来实现这一点:

sed '/^>/!s/[a-z]/C/g' file.txt
如果您喜欢awk,这里是:

awk '!/^>/ { gsub(/[a-z]/, "C") }1' file.txt
结果:

>1CHE
CHKLCMCHC
>2HV3
PNMRCYCC
>5GH3
LKDCVCCQ
我将使用sed来实现这一点:

sed '/^>/!s/[a-z]/C/g' file.txt
如果您喜欢awk,这里是:

awk '!/^>/ { gsub(/[a-z]/, "C") }1' file.txt
结果:

>1CHE
CHKLCMCHC
>2HV3
PNMRCYCC
>5GH3
LKDCVCCQ

@SaddamAbuGhaida:我认为OP只是想改变蛋白质序列,而不是序列的名称。tr可能不合适。尽管这个问题没有那么明确…@SaddamAbuGhaida:我认为OP只是想改变蛋白质序列,而不是序列的名称。tr可能不合适。虽然这个问题没有很好的定义……在ZSH中,[:lower:]需要被引用。在ZSH中,[:lower:]需要被引用。