昊漫玉 发表于 2018-8-18 11:35:40

如何使用shell将文件中单词首字母转换为大写

  今天在CU看到一个帖子,其中有这个问题很值得启发思考与学习。
  如何使用shell将文件中单词首字母转换为大写?
  这个问题看似简单,实现起来确不易,即使是在vi甚至是wordpad条件下也很困难。还好我们有伟大的sed和awk。
  先来分析问题,将文件中的每个单词的首字母转换为大写,这里有两个难点。
  1. 如何区分单词的边界?
  2. 大小写转换如何实现?
  对于单词边界的区分,一般英文习惯下我们输入单词前面都是空格或换行符号;大小写转换在awk中有函数toupper()。先尝试使用awk解决。
  


[*]# cat test
[*]consult section 3.1 in the Owner
[*]andoperator guide for a description of the tape drives
[*]available on your system.
[*]# awk '{for (i=1;i
页: [1]
查看完整版本: 如何使用shell将文件中单词首字母转换为大写