Linux 中如何保持每行单词的首字母大写以及文本中所有单词的首字母大写,其他均为小写

 

001、将每行的首字母大写

a、

[root@PC1 test1]# ls
a.txt
[root@PC1 test1]# cat a.txt                          ## 测试文件
aa bb cc
dd ee ff
gg hh qq
[root@PC1 test1]# sed 's/^[a-z]/\U&/' a.txt          ## 每行第一个字母转换为大写
Aa bb cc
Dd ee ff
Gg hh qq
[root@PC1 test1]# cat a.txt                          ## 测试文件
aa bb cc
dd ee ff
gg hh qq
[root@PC1 test1]# sed 's/^\(.\)/\U\1/' a.txt         ## 每行第一个字母转换为大写           
Aa bb cc
Dd ee ff
Gg hh qq

 

b、

[root@PC1 test1]# ls
a.txt
[root@PC1 test1]# cat a.txt
aa bb cc
dd ee ff
gg hh qq
[root@PC1 test1]# sed 's/^./\U&/' a.txt     ## 转换第一个字母
Aa bb cc
Dd ee ff
Gg hh qq

 

 

002、-b选项;将所有单词的首字母转换为大写

[root@PC1 test1]# ls
a.txt
[root@PC1 test1]# cat a.txt                            ## 测试文本
aa bb cc
dd ee ff
gg hh qq
[root@PC1 test1]# sed 's/\b[a-z]/\U&/' a.txt           ## 将每行的首字母转换为大写
Aa bb cc
Dd ee ff
Gg hh qq
[root@PC1 test1]# sed 's/\b[a-z]/\U&/g' a.txt          ## 将每个单词的首字母转换为大写;;;;; \b发挥了什么作用? \b表示限位符??
Aa Bb Cc
Dd Ee Ff
Gg Hh Qq

 。

 

posted @ 2024-02-15 17:51  小鲨鱼2018  阅读(36)  评论(0编辑  收藏  举报