当前位置: 首页 > Linux

Linux命令行中的大小写转换

时间:2023-04-06 03:06:33 Linux

在编辑文本的时候,大小写往往是需要注意的。大小写转换是一项非常枯燥乏味的工作。幸运的是,Linux提供了很多功能来简化这项工作。命令。接下来我们看一下完成大小写转换的命令。tr命令tr(翻译)是最简单的大小写转换命令之一,可以在命令行或脚本中使用。例如,如果你想制作一个全部为大写字母的字符串,你可以使用下面的命令来完成这个内容:$echohelloalvin|tr[:lower:][:upper:]HELLOALVIN以下适用于此命令在脚本示例中,写入文件depts的内容将采用大写格式:$echo"Enterdepartmentname:"|tr[:lower:][:upper:]>>depts上面命令的顺序改为[:upper:][:lower:]会得到相反的结果,所有输入的字母都会变成小写:$echo"Enter部门名称:“|tr[:upper:][:lower:]>>depts你可以使用A-Za-z而不是[:upper:][:lower:]来达到同样的效果:$echo"Enterdepartmentname:"|tra-zA-Z>>deptsawk命令awk命令使用toupper和tolower这两个选项来完成大小写转换。上述脚本的大小写转换可以使用如下命令完成:$echo"Enterdepartmentname:"|awk'{printtoupper($0)}'>>depts上面转换为大写字母,下面是转换为小写字母的方法:$echo"Enterdepartmentname:"|awk'{printtolower($0)}'>>deptssed命令sed(streameditor)命令也可以很好的完成大小写转换的工作,下面的命令也可以达到前面两条命令的效果:$echo"Enterdepartmentname:“|sed's/[a-z]/\U&/g'>>depts要完成相反的转换,只需将上面的第一个命令中,将U替换为L,将[a-z]替换为[A-Z]:$echo"Enterdepartmentname:“|sed's/[A-Z]/\L&/g'>>depts修改文件中的文本内容awk和sed命令都可以完成整个文档内容的大小写转换,所以如果需要转换整个文档content转为小写,可以使用如下命令将文件内容小写输出到屏幕:$awk'{printtolower($0)}'depts结果如下:enterdepartmentname:financebillingbookkeeping注意这个结果仅将屏幕上打印的内容转换为小写,而文档本身的大写字母保持不变。使用catdepts命令查看。如果要真正修改文档内容的大小写,可以使用下面的命令来完成:awk,only的用法略有不同,其用法如下:$sed's/[A-Z]/\L&/g'deptsOnlycapitalizethefirstletter只大写一串字符串中每个单词的首字母,你可以使用下面的命令完成:$echodesign\&engineering|sed-e"s/\b\(.\)/\u\1/g"Design&Engineering以上命令只能将首字母大写,其他字母不变。确保只有第一个字母大写当您需要对大量文本执行此操作时,例如以正确格式显示大量人名,事情会变得有点困难。这里有两种方法可以完成这个任务:使用sed命令来确保结果是正确的,需要更复杂的sed命令格式:$echodesign\&ENGINEERING|sed's/\b\([[:alpha:]]\)\([[:alpha:]]*\)\b/\u\1\L\2/g'用python完成设计&工程code如果你的linux安装了python,可以用下面的命令来补全文本首字母大写,python代码比上面sed命令的正则表达式更容易理解:$echo-n“设计与工程”|python3-c"importsys;print(sys.stdin.read().title())"Design&EngineeringLinux有很多大小写转换的命令,哪个更好用取决于你处理的是一串字符还是一个完整的文件。希望本文介绍的各种命令对您有所帮助。如果你对这些命令有什么疑问,欢迎留言讨论!最后,最近有很多朋友找我要一份Linux学习路线图,所以我结合自己的经验,利用业余时间熬夜一个月,整理了一本电子书。无论你是面试还是自我提升,相信都会对你有所帮助!免费送给大家,只求大家给我点个赞!电子书|LinuxDevelopmentLearningRoadmap也希望有小伙伴可以和我一起把这本电子书做得更完美!获得?希望老铁们来个三连击,让更多人看到这篇文章。推荐阅读:干货|程序员和高级架构师免费发送工件的必备资源|支持搜索的资源网站