linux命令行大小写,在 Linux 命令行中转换大小写 | Linux 中国

(translate)命令是在命令行或脚本中最容易使用的命令之一。如果你要确定要一串大写字符串,你只需将它传给 tr,如下所示:

$ echoHelloThere|tr[:lower:][:upper:]

HELLO THERE

下面是一个在脚本中使用这个命令的例子,当你要确保添加到文件中的所有文本都使用大写形式以保持一致性时(LCTT 译注:这里输入部门名称作为示例):

#!/bin/bash

echo-n "Enter department name: "

read dept

echo $dept |tr[:lower:][:upper:]>> depts

将顺序切换为 [:upper:] [:lower:] 会产生相反的效果,将所有大写的部门名称都转换为小写:

echo $dept |tr[:upper:][:lower:]>> depts

同样,你可以使用 sed 命令的 A-Z 和 a-z 字符串完成相同的操作:

echo $dept |tr a-z A-Z >> depts

毫无疑问,反转 a-z 和 A-Z 字符串的顺序将产生相反的效果,将文本全部变为小写。

使用 awk

awk 命令可让你使用它的 toupper 和 tolower 选项执行相同的操作。上例脚本中的命令可以用这种方式代替:

echo $dept | awk '{print toupper($0)}'>> depts

相反操作(切换为小写)如下所示:

echo $dept | awk '{print tolower($0)}'>> depts

使用 sed

sed(stream editor)命令也可用于切换大小写。它与上面显示的两个命令中的第一个具有相同的效果。

echo $dept |sed's/[a-z]/\U&/g'>> depts

从大写字母切换到小写字母只需将行尾附近的 U 替换为 L。

echo $dept |sed's/[A-Z]/\L&/g'>> depts

操作文件中的文本

awk 和 sed 都能更改整个文件的文本大小写。因此,你发现你的老板需要所有部门名称的小写么?没问题。只需带上文件名运行以下命令:

$ awk '{print tolower($0)}' depts

finance

billing

bookkeeping

如果要覆盖 depts 文件,而不仅仅是以小写形式显示,则需要执行以下操作:

$ awk '{print tolower($0)}' depts > depts-

$ mv depts- depts

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值