Unix tr 命令将小写转换为大写以及大写转换为小写

问题描述 投票:0回答:4

所以我四处寻找并使用命令

tr
你可以从小写转换为大写,反之亦然。但有没有办法同时做到这两点呢?

所以:

$ tr '[:upper:]' '[:lower:]' or  $ tr A-Z a-z

将把 “Hello World ABC” 改为 “hello world abc”,但我想要的是 “hELLO wORLD abc”

unix pipeline tr
4个回答
27
投票

这将满足您的需求:

 tr '[:upper:][:lower:]' '[:lower:][:upper:]'

5
投票

我认为

tr '[a-zA-Z]' '[A-Za-z]'
更直接,更容易记住。


2
投票

您可以使用

\L&
\U&
分别转换为小写和大写:

$echo "SUJIT dhamale " | sed 's/.*/\L&/g'

结果:

sujit dhamale

$ echo "SUJIT dhamale " | sed 's/.*/\U&/g'

结果:

SUJIT DHAMALE


0
投票

GNU coreutils 版本的“tr”支持以下语法:

降低:

$ 回显 ABC | tr '[:上:]' '[:下:]'
ABC

至上:

$ 回显 abc | tr '[:上:]' '[:下:]'
ABC

我认为这是最简单的方法。

© www.soinside.com 2019 - 2024. All rights reserved.