小编Joe*_*Joe的帖子

linux sed脚本使每个单词的首字母大写

我正在尝试制作一个sed脚本,它将成为每个的第一个字母

molly w. bolt     334-78-5443
walter q. bugg    984-49-0032
noah p. way       887-12-0921
Run Code Online (Sandbox Code Playgroud)

所以我希望它看起来像这样:

Molly W. Bolt     334-78-5443
Walter Q. Bugg    984-49-0032
Noah P. Way       887-12-0921
Run Code Online (Sandbox Code Playgroud)

到目前为止,我有以下脚本,但它只会大写它遇到的前两个单词,即.制作Molly W. bolt.我无法弄清楚如何修改脚本以获得姓氏大写.我需要添加什么?

h
s/\(.\).*/\1/
y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/
G
s/\(.\)\n\(.\)\(.*\)/\1\3/
/ [a-z]/{
    h
    s/\([A-Z][a-z]* \)\([a-z]\).*/\2/
    y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/
    G
    s/\(.\)\n\([A-Z][a-z]* \)\(.\)\(.*\)/\2\1\4/
}
Run Code Online (Sandbox Code Playgroud)

linux sed

4
推荐指数
1
解决办法
179
查看次数

Linux:删除以[开头]的行

我知道我可以使用grep -v'^#'来删除以#开头的行

现在我遇到问题,当我尝试这样做去除[即.grep -v'^ ['甚至是sed'/ ^ [/ d'

为什么会发生这种情况?如何实现这一目标?

linux grep sed

-4
推荐指数
1
解决办法
329
查看次数

标签 统计

linux ×2

sed ×2

grep ×1