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
目录
相关文章
|
18天前
|
Web App开发 Java Linux
Linux之Shell基本命令篇
Linux之Shell基本命令篇
Linux之Shell基本命令篇
|
5天前
|
Linux Perl
Linux系统替换字符串常用命令
请注意,`sed`命令可以非常强大,可以根据不同的需求使用不同的选项和正则表达式来进行更复杂的字符串替换操作。
17 0
|
16天前
|
存储 Shell Linux
【攻防世界】unseping (反序列化与Linux bash shell)
【攻防世界】unseping (反序列化与Linux bash shell)
|
19天前
|
Shell Linux
【Linux】12. 模拟实现shell
【Linux】12. 模拟实现shell
27 2
|
25天前
|
Shell Linux
Linux的shell入门教程shell脚本入门教程
Linux的shell入门教程shell脚本入门教程
16 0
|
1月前
|
存储 算法 Shell
【Linux 环境变量相关】深入理解Linux下 CMake、Shell 与环境变量的交互(二)
【Linux 环境变量相关】深入理解Linux下 CMake、Shell 与环境变量的交互
50 0
|
1月前
|
Shell Linux 开发工具
shell的介绍以及Linux权限的讲解
shell的介绍以及Linux权限的讲解
31 2
|
1月前
|
网络协议 Shell Linux
【Shell 命令集合 系统管理 】Linux 查询域名的注册信息 whois命令 使用指南
【Shell 命令集合 系统管理 】Linux 查询域名的注册信息 whois命令 使用指南
48 1
|
6月前
|
Unix Shell Linux
|
1月前
|
Shell Linux C语言
Linux中执行Shell的函数(popen,system,exec)介绍:分享一些常用的执行Shell的函数及其相关编程技巧和经验
Linux中执行Shell的函数(popen,system,exec)介绍:分享一些常用的执行Shell的函数及其相关编程技巧和经验
30 0