linux shell 字符串操作

简介: 最近在写shell脚本,发现了一些shell 字符串的骚操作,可以提升效率。字符串读取${var} : 变量var的值${var-DEFAULT} : 如果var没有被声明,var的值就是$DEFAULT${var:-DEFAULT} : 如果var没有被声明,或者为空,var的值就是$D...

最近在写shell脚本,发现了一些shell 字符串的骚操作,可以提升效率。

字符串读取

  • ${var} : 变量var的值
  • ${var-DEFAULT} : 如果var没有被声明,var的值就是$DEFAULT
  • ${var:-DEFAULT} : 如果var没有被声明,或者为空,var的值就是$DEFAULT
  • ${var=DEFAULT} : 如果var没有被声明,var的值就是$DEFAULT
  • ${var: =DEFAULT} : 如果var没有被声明,或者为空,var的值就是$DEFAULT
  • ${#var} : 得到 $var的长度

字符串操作

  • ${#string} : $string 的长度
  • ${string:position} : 从$position位置开始的子字符串
  • ${string:position:length} : 从$position位置开始,长度为length的子字符串
  • ${string#substring} : 从头开始,删除最短匹配$substring的字符串
  • ${string##substring} : 从头开始,删除最长匹配$substring的字符串
  • ${string%substring} : 从结尾开始,删除最短匹配$substring的字符串
  • ${string%%substring} : 从结尾开始,删除最长匹配$substring的字符串
  • ${string/str1/str2} : 使用str2替换第一个匹配的$str1
  • ${string//str1/str2} : 使用str2替换所有匹配的$str1
  • ${string/#str1/str2} : 如果$string的前缀和$str1匹配,用$str2替换$str1
  • ${string/%str1/str2} : 如果$string的后缀和$str1匹配,用$str2替换$str1
目录
相关文章
|
16天前
|
Shell Linux 开发工具
linux shell 脚本调试技巧
【9月更文挑战第3天】在Linux中调试shell脚本可采用多种技巧:使用`-x`选项显示每行命令及变量扩展情况;通过`read`或`trap`设置断点;利用`echo`检查变量值,`set`显示所有变量;检查退出状态码 `$?` 进行错误处理;使用`bashdb`等调试工具实现更复杂调试功能。
|
30天前
|
JavaScript 关系型数据库 Shell
Linux shell编写技巧之随机取字符串(一)
本文介绍了Linux Shell脚本的编写技巧,包括环境配置、变量命名规则和缩进语法,并提供了一个实例练习,展示如何使用`$RANDOM`变量和`md5sum`命令来生成随机的8位字符串。
34 4
|
30天前
|
Java Shell Linux
【Linux入门技巧】新员工必看:用Shell脚本轻松解析应用服务日志
关于如何使用Shell脚本来解析Linux系统中的应用服务日志,提供了脚本实现的详细步骤和技巧,以及一些Shell编程的技能扩展。
24 0
【Linux入门技巧】新员工必看:用Shell脚本轻松解析应用服务日志
|
1月前
|
监控 Shell Linux
在Linux中,如何使用shell脚本进行系统监控和报告?
在Linux中,如何使用shell脚本进行系统监控和报告?
|
29天前
|
监控 Shell Linux
在Linux中,如何使用shell脚本检测磁盘使用率?
在Linux中,如何使用shell脚本检测磁盘使用率?
|
29天前
|
Shell Linux 开发工具
在Linux中,如何编写shell脚本将当前目录下大于10K的文件转移到/tmp目录下?
在Linux中,如何编写shell脚本将当前目录下大于10K的文件转移到/tmp目录下?
|
29天前
|
缓存 Shell Linux
在Linux中,bash shell 中的 hash 命令有什么作用?
在Linux中,bash shell 中的 hash 命令有什么作用?
|
29天前
|
Unix Shell Linux
在Linux中,什么是Shell脚本,并且如何编写它。
在Linux中,什么是Shell脚本,并且如何编写它。
|
1月前
|
监控 Shell Linux
在Linux中,什么是Linux shell?
在Linux中,什么是Linux shell?
|
Web App开发 Shell Linux
linux中shell截取字符串方法总结
shell中截取字符串的方法有很多中,可以分为两大类。第一种获取特定的字符或字符串的左边或者右边的字字符串,java中实现需要先用indexOf来确定特定字符串的位置,然后再用substring来获取结果;第二种类似java中的substring     shell中截取字符串的方法有很多中, ${expression}一共有9种使用方法。
4778 0