Linux终端中实现大小写字符转换

树叶云

Linux终端中提供了一些可以大小写之间转换文本的命令,通过这些命令可以提高我们的工作效率,本篇文章重点为大家讲解一下Linux终端中进行大小写字符转换具体方法。

环境

Centos7

使用tr

如果有一个字符串要确保全部是大写的,只需通过tr命令替换:

[root@localhost ~]# echo "Hello World" | tr [:lower:] [:upper:]
HELLO WORLD

下面是在脚本中使用此命令的示例,需要确保添加到文件中的所有文本都是大写,以保持一致性:

#!/bin/bash read -p "Enter department name: " dept
echo $dept | tr [:lower:] [:upper:] >> depts

将顺序切换为[:upper:] [:lower:]会会将所有大写字符转换成小写:

#!/bin/bash read -p "Enter department name: " dept
echo $dept | tr [:upper:] [:lower:] >> depts

也可以使用”a-z” “A-Z”来替换大小写。

#!/bin/bash read -p "Enter department name: " dept
echo $dept | tr a-z A-Z>> depts

下面几个函数是tr内置的:

[:alnum:] 所有字母和数字

[:alpha:] 所有字母

[:blank:] 所有空白

[:cntrl:] 所有控制字符

[:digit:] 所有数字

[:graph:] 所有可打印字符,不包括空格

[:lower:] 所有小写字符

[:print:] 所有可打印字符,包括空格

[:punct:] 所有的标点符号

[:upper:] 所有大写字符

使用awk

在awk中可以使用toupper()和tolower()函数,来转换大小写。 下面实例内容在文本里面写入,将输入的小写内容转换为大写:

#!/bin/bash read -p "Enter department name: " dept
echo $dept | awk ‘{print toupper($0)}’ >> depts

下面实例内容在文本里面写入,将输入的大写内容转换为小写:

#!/bin/bash read -p "Enter department name: " dept
echo $dept | awk ‘{print tolower($0)}’ >> depts

使用sed

在sed中可以使用\U&和\L&函数,来转换大小写。

使用sed,将小写转换成大写:

#!/bin/bash read -p "Enter department name: " dept
echo $dept | sed 's/[a-z]/\U&/g' >> depts

使用sed,将大写转换成小写:

#!/bin/bash read -p "Enter department name: " dept
echo $dept | sed 's/[A-Z]/\L&/g' >> depts

总结

在linux中有很多方式可以替换大小写字母,你可以选择一个能记住的命令使用。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/223861.html<

(0)
运维的头像运维
上一篇2025-04-16 04:04
下一篇 2025-04-16 04:05

相关推荐

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注