Bash字符串处理(与Java对照) - 27.转换大小写

Bash字符串处理(与Java对照) - 27.转换大小写

In Java

 String     toLowerCase()
          使用默认语言环境的规则将此 String 中的所有字符都转换为小写。

 

 String     toUpperCase()
          使用默认语言环境的规则将此 String 中的所有字符都转换为大写。

 

In Bash

使用tr命令来转换大小写

大写 => 小写

echo "$STR" | tr A-Z a-z

echo "$STR" | tr 'A-Z' 'a-z'

echo "$STR" | tr "A-Z" "a-z"

echo "$STR" | tr [:upper:] [:lower:]

echo "$STR" | tr "[A-Z]" "[a-z]"

 

[root@jfht ~]# STR=Hello

[root@jfht ~]# echo "$STR" | tr [:upper:] [:lower:]
hello
[root@jfht ~]# echo "$STR" | tr "[A-Z]" "[a-z]"
hello

 

错误:echo "$STR" | tr [A-Z] [a-z]

必须加上双引号或单引号

如果没有加上引号且当前目录有单个字符的文件或目录

就会出现意想不到的结果

[root@jfht ~]# touch E
[root@jfht ~]# echo "$STR" | tr [A-Z] [a-z]
Hello

 

小写 => 大写

echo "$STR" | tr a-z A-Z

echo "$STR" | tr 'a-z' 'A-Z'

echo "$STR" | tr "a-z" "A-Z"

echo "$STR" | tr [:lower:] [:upper:]

echo "$STR" | tr "[a-z]" "[A-Z]"

 

[root@jfht ~]# STR=Hello
[root@jfht ~]# echo "$STR" | tr [:lower:] [:upper:]
HELLO

[root@jfht ~]# echo "$STR" | tr "[a-z]" "[A-Z]"
HELLO

 

使用sed命令来转换大小写

大写 => 小写

错误:echo "$STR" | sed "y/[A-Z]/[a-z]/"

正确:echo "$STR" | sed y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/

 

小写 => 大写

错误:echo "$STR" | sed "y/[a-z]/[A-Z]/"

正确:echo "$STR" | sed y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/

 

[root@jfht ~]# STR=Hello

[root@jfht ~]# echo "$STR" | sed y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
hello

[root@jfht ~]# echo "$STR" | sed y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/   
HELLO

 

使用awk命令来转换大小写

大写 => 小写

echo "$STR" | awk '{print tolower($0)}'

 

小写 => 大写

echo "$STR" | awk '{print toupper($0)}'

 

[root@jfht ctmw]# STR=Hello

[root@jfht ctmw]# echo "$STR" | awk '{print tolower($0)}'
hello
[root@jfht ctmw]# echo "$STR" | awk '{print toupper($0)}'
HELLO
[root@jfht ctmw]#

 

使用perl命令转换大小写

大写 => 小写

echo "$STR" | perl -e 'print lc <>;'

 

小写 => 大写

echo "$STR" | perl -e 'print uc <>;'

 

[root@jfht ctmw]# STR=Hello

[root@jfht ctmw]# echo "$STR" | perl -e 'print lc <>;'
hello
[root@jfht ctmw]# echo "$STR" | perl -e 'print uc <>;'
HELLO
[root@jfht ctmw]#

 

 

本文链接:http://codingstandards.iteye.com/blog/1164913   (转载请注明出处)

返回目录:Java程序员的Bash实用指南系列之字符串处理(目录) 

上节内容:Bash字符串处理(与Java对照) - 26.根据位置和长度截取子串

下节内容:Bash字符串处理(与Java对照) - 28.去除前后空白

 

 

Linux下处理特殊字符文件名的安全方法与工程实践 在软件开发与系统运维中,文件命名规范是基础但关键的基础设施问题。从技术原理上看,Shell解释器对元字符(如空格、方括号、波浪号)有特殊解析规则,而Unicode编码和跨平台文件系统差异进一步增加了复杂性。这些底层机制决定了特殊文件名在命令行、脚本和版本控制系统中可能引发解析错误、路径截断或流程中断。其技术价值在于保障工程协作的稳定性和自动化流程的可靠性,特别是在持续集成/持续部署(CI/CD)和资产管线等场景中。通过掌握`ls -b`查看原始字节、`find`命令安全搜索以及`mv`配合引号操作等方法,开 阅读详情

相关推荐

基于Dify与DeepSeek构建中医智能问答工作流:从知识库到精准处方

本文详细介绍了如何利用Dify与DeepSeek构建中医智能问答工作流,实现从知识库构建到精准处方的全流程。通过模型编排和知识检索技术,系统能够结合中医辨证思维与AI推理能力,为基层医师、学生和爱好者提供结构化诊疗建议。文章重点分享了知识库选材、症状标准化处理、智能检索与辨证推理等核心环节的实战经验。

weixin_29062255的博客 251

bash将字符串转换为大/小写, 反转字符串大小写

一、运行截图 (1)、转换为小写 (2)、转换为大写 (3)、反转字符串大小写 警告:需要bash4+以上的版本 二、转换为小写 (1)、示例函数: lower() { printf '%s\n' "${1,,}" } (2)、示例用法: $ lower "HELLO" hello $ lower "HeLlO" hello $ lower "hello" hello 三、转换为大写 (1)、示例函数: upper() { printf..

张音乐的博客 900

一步一步教你写股票走势图——K线图一(概述)

股票分时图部分已经开发完毕,受到了广大开发者的好评!界面、功能都挺完美,解决了好一些MP开发者的问题,博主甚是欣悦,更有动力去开源K线图。这里说一下,如果有问题直接留言或者发邮件,github上个人信息有邮件,我看到基本都会回复,博主不加qq的,体谅O(∩_∩)O。分析好了,废话不多说,我们分析下K线图吧,首先我们看下自选股K线图的效果吧效果还是很赞的,经过分时图的研究后,博主越来越确信自选股用的应

体验Android编程之美 3万+

bash进行字符串大小写转换

# awk 命令 str1="MATCH" str2="match" awk -vs1="$str1" -vs2="$str2" 'BEGIN {   if ( tolower(s1) == tolower(s2) ){     print "match"   } }' 直接使用变量自身转换 var1=TesT var2=tEst echo ${var1,,} ${var2,,} #转换为小写...

halazi100 865

ANSYS Workbench实战:用网格自适应搞定超弹性橡胶大变形仿真(附避坑命令流)

本文深入探讨了ANSYS Workbench中超弹性橡胶大变形仿真的网格自适应技术,重点解析了混合U-P单元的应用、非线性自适应网格的实战技巧及材料模型选择的注意事项。通过具体案例和命令流示例,帮助工程师有效解决橡胶仿真中的收敛问题和网格畸变挑战,提升仿真精度和效率。

weixin_42666036的博客 303

【ESP32-S3量产指南】基于Flash下载工具实现Release模式Flash加密与安全配置

本文详细介绍了ESP32-S3量产阶段如何通过Flash下载工具实现Release模式下的Flash加密与安全配置。从加密模式选择、工具配置到分区表优化,提供了一套完整的量产安全解决方案,帮助开发者有效防止固件泄露和篡改,确保设备安全。

weixin_28730131的博客 230

linux bash shell:最方便的字符串大小写转换(lowercase/uppercase conversion)

关于字符串大小写转换,是写 linux 脚本经常干的事儿,所以总想找个方便的方法让我少打点字儿,搜索国内的中文资源,网上也能找到很多关于这个帖子,介绍的方法都差不多,用typeset是最简单的方法了,但我觉得还是不够简单,因为需要多定义一个变量。 google上找到这个stackoverflow上的帖子,才知道Bash 4.0以上版本有更好的办法: 《How to convert a strin...

10km的专栏 1万+

FPGA实战:从零构建eMMC控制器(Verilog篇)

本文详细介绍了如何使用Verilog从零构建FPGA上的eMMC控制器,涵盖eMMC接口基础、命令系统解析、关键模块设计及性能优化技巧。通过实战案例,帮助开发者掌握高速数据存储解决方案,提升嵌入式系统开发能力。

weixin_26802933的博客 297

bash shell 大小写转换

1、用tr 例如:UPPERCASE=(echo(echoVARIABLE | tr '[a-z]' '[A-Z]') (把VARIABLE的小写转换成大写) LOWERCASE=(echo(echoVARIABLE | tr '[A-Z]' '[a-z]') (把VARIABLE的大写转换成小写) 2、用typeset typeset -u VARIABLE (把VARIABLE的小写转换成大写) typeset -l VARIABLE...

hknaruto的专栏 1064

Fluent新手必看:如何正确解读scaled residuals曲线(附常见问题排查)

本文详细解析了Fluent中scaled residuals曲线的解读方法及常见问题排查技巧。针对continuity残差居高不下、湍流模型收敛困难等典型问题,提供了网格质量检查、边界条件验证和求解策略调整的实用解决方案,帮助CFD新手快速掌握计算收敛性的关键判断标准。

weixin_28698059的博客 376

vue项目基于WebRTC实现一对一音视频通话

vue项目基于WebRTC实现一对一音视频通话。完整代码gitee地址: https://gitee.com/wade-nian/wdn-webrtc.git。

qq_920189602的博客 6647

大小写转换_Bash技巧:介绍进行大小写字母转换的几种方法

在 Linux bash shell 中,可以使用下面几种方法进行字符串大小写转换:使用 declare 命令转换大小写使用 tr 命令转换大小写${parameter^^} 表达式基于 parameter 变量值,把所有字符转成大写,得到新的值${parameter,,} 表达式基于 parameter 变量值,把所有字符转成小写,得到新的值使用 declare 命令转换大小写我们可以使用 ba...

weixin_39666782的博客 1435

AI应用架构师进阶:智能控制系统架构的多Agent设计

本文将从“AI应用架构师”的视角,系统讲解智能控制系统中多Agent架构的设计方法。理解多Agent系统的核心特性与在智能控制场景中的优势;掌握多Agent架构的设计流程:从需求分析到角色划分、通信设计、决策实现;通过实战案例(智能家居控制场景),手把手带你落地一个多Agent智能控制系统;探讨进阶话题:动态Agent组织、安全性设计、与大语言模型(LLM)的融合等。在多Agent系统中,Agent(智能体)是具备自主决策能力的最小执行单元。

小程序开发 1085

Bash字符串处理(与Java对照) - 28.去除前后空白

Bash字符串处理(与Java对照) - 28.去除前后空白 In Java String     trim()           返回字符串的副本,忽略前导空白和尾部空白。   In Bash 使用echo命令去除串中的空白 echo $STR 注意 $STR 不要带引号。因为 $STR 展开后,会作为 echo 的参数。那么 echo 在处理参数的时候,自然会...

巨人站在肩膀上 304

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Bash字符串处理(与Java对照) - 3.给(字符串)变量赋值

Bash字符串处理(与Java对照) - 3.给(字符串)变量赋值 In Java 简单赋值情况 s = "Hello";   一次给多个变量赋值的情况 s1 = s2 = "Same";   赋值为整数(将整数转换为字符串) int i = 1234; s = String.valueOf(i); 或 s = "" + i;   In Bash 赋值符号(=) 赋值...

巨人站在肩膀上 308

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Java程序员的Bash实用指南系列之字符串处理(目录)

Java程序员的Bash实用指南系列之字符串处理(目录) 文章   在一般的计算机编程语言中,字符串处理是很重要的一块,Bash也是如此,如果掌握了字符串的处理,基本上就能够应付大部分的编程工作了。在Unix/Linux操作系统中,很多时候需要使用多个命令一起配合才能完成一个较复杂的任务,Shell提供了管道线、重定向、结构化编程等方式,把这些命令粘合在一起。因此,命令之间的接口数据的处理

Nicholas的专栏 QQ1295794532 1139

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

curlconverter实战指南:一键将Curl命令转换为27种编程语言代码

在API开发和测试中,Curl命令是我们最常用的工具之一。无论是调试接口、测试服务还是编写文档,Curl都是开发者的得力助手。然而,当我们需要将这些Curl命令转换为生产代码时,手动翻译不仅耗时,还容易出错。curlconverter正是为了解决这一痛点而生,它能将Curl命令自动转换为Python、JavaScript、Go、PHP等27种编程语言的代码,极大提升开发效率。 ## 🚀 5分钟

gitblog_00717的博客 376

curlconverter终极指南:高效转换Curl命令到27种编程语言的完整方案

curlconverter是一款强大的工具,能够将curl命令转换为Python、JavaScript等27种编程语言的代码,极大地简化了跨语言HTTP请求的实现过程,为开发者提供了高效的代码转换解决方案。无论是API集成、测试脚本迁移,还是多语言项目开发,curlconverter都能显著提升工作效率。 ## 📊 核心功能亮点解析 curlconverter的核心价值在于其**智能转换引擎

gitblog_00019的博客 709

绝对干货,掌握这27个知识点,轻松拿下80%的技术面试(Java岗)

说明:《技术面试需要掌握的基础知识整理》一共收录了27个专题,PDF版共600余页,详细的讲解了这27个知识点,可以说是非常详细的了,本文限于篇幅,故只在文章展示目录部分及部分PDF截图,下载方式见文末。添加图片注释,不超过 140 字(可选)添加图片注释,不超过 140 字(可选)添加图片注释,不超过 140 字(可选)添加图片注释,不超过 140 字(可选)添加图片注释,不超过 140 字(可选)添加图片注释,不超过 140 字(可选)添加图片注释,不超过 140 字(可选)

m0_63437643的博客 1062

轻松拿下80%的技术面试(Java岗),只因掌握这27个知识点,妥妥的干货

前言: Java的诞生已经超过了20年。一直以来,Java以其语法简单,开发者可以快速上手,适应众多领域,具有跨平台能力等特性,吸引了无数程序员学习和使用。基于Java优秀的特性和庞大的使用基础,各大公司对Java工程师的需求也是源源不断。 本文大纲(思维导图) 说明:《技术面试需要掌握的基础知识整理》一共收录了27个专题,PDF版共600余页,详细的讲解了这27个知识点,可以说是非常详细的了,本文限于篇幅,故只在文章展示目录部分及部分PDF截图,添加vx[mxx-0474qaq]获取完整版

weixin_59330273的博客 256

curlconverter:从Shell到代码的自动化桥梁技术解析

在当今多语言技术栈并存的开发环境中,HTTP请求的实现方式因语言而异。开发者经常面临一个挑战:如何将熟悉的curl命令快速转换为目标编程语言的代码?curlconverter项目正是为解决这一痛点而生的技术工具,它通过智能解析和代码生成,实现了从Shell命令到27种编程语言的自动化转换。 ## 技术架构:三层解析与代码生成体系 curlconverter的核心架构采用分层设计,每一层都有明确

gitblog_00988的博客 920

Python字符串转数组全解析:从split到ast.literal_eval的实战技巧

字符串处理是编程中的基础操作,其核心在于将序列化数据转换为结构化格式。在Python中,字符串到数组的转换涉及数据解析与序列化两个关键技术环节。通过split()方法可实现基于分隔符的简单拆分,而正则表达式则能处理复杂分隔模式,这两种方法构成了文本解析的基础能力。当需要将字符串形式的列表还原为Python对象时,ast.literal_eval()提供了安全的字面量评估方案,避免了eval()的安全风险。这些技术在数据清洗、日志解析、配置加载等场景中具有重要价值,特别是在处理CSV格式数据、网络传输数据时,

a359798678的博客 384

频次特征写入到protobuf文件中的知识点总结

知识点汇总: 1:shell中的exit是会退出shell程序的 2:$var 和${var}是没啥区别的 3:遍历过去几天的shell程序 for ((i=1;i<=29;i++)); do nowdate=`date -d "-$i day" +%Y-%m-%d` done 4:shell是可以减分钟的 date -d “40 minute ago” +”%Y-%m-%...

Accepted ALL lve 547

java ffmegp

给大家整理了一些有关【F,Java】的项目学习资料(附讲解~~):https://edu.51cto.com/course/27963.htmlhttps://edu.51cto.com/course/35714.html以一些关于【egp】的学习资料和大家一起分享一下:https://edu.51cto.com/v...

weixin_42494742的博客 155
上一篇: 快速修改Linux的某网卡IP地址
下一篇: Bash字符串处理(与Java对照) - 28.去除前后空白
codingstandards
博客等级 码龄16年 12粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值