• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >linux shell > shell 字符串操作(长度,查找,替换)详解

shell 字符串操作(长度,查找,替换)详解

作者: 字体:[增加 减小] 来源:互联网

通过本文主要向大家介绍了shell 字符串长度,shell获取字符串长度,shell 计算字符串长度,shell 判断字符串长度,shell 字符串比较等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

表达式

含义

${var}

变量var的值, 与$var相同

${var-DEFAULT}

如果var没有被声明, 那么就以$DEFAULT作为其值 *

${var:-DEFAULT}

如果var没有被声明, 或者其值为空, 那么就以$DEFAULT作为其值 *

${var=DEFAULT}

如果var没有被声明, 那么就以$DEFAULT作为其值 *

${var:=DEFAULT}

如果var没有被声明, 或者其值为空, 那么就以$DEFAULT作为其值 *

${var+OTHER}

如果var声明了, 那么其值就是$OTHER, 否则就为null字符串

${var:+OTHER}

如果var被设置了, 那么其值就是$OTHER, 否则就为null字符串

${var?ERR_MSG}

如果var没被声明, 那么就打印$ERR_MSG *

${var:?ERR_MSG}

如果var没被设置, 那么就打印$ERR_MSG *

${!varprefix*}

匹配之前所有以varprefix开头进行声明的变量

${!varprefix@}

匹配之前所有以varprefix开头进行声明的变量


加入了“*” 不是意思是: 当然, 如果变量var已经被设置的话, 那么其值就是$var.

[chengmo@localhost ~]$ echo ${abc-'ok'}
ok
[chengmo@localhost ~]$ echo $abc

[chengmo@localhost ~]$ echo ${abc='ok'}
ok
[chengmo@localhost ~]$ echo $abc
ok


如果abc 没有声明“="还会给abc赋值。

[chengmo@localhost ~]$ var1=11;var2=12;var3=
[chengmo@localhost ~]$ echo${!v@}
var1 var2 var3
[chengmo@localhost ~]$ echo ${!v*}
var1 var2 var3

${!varprefix*}与${!varprefix@}相似,可以通过变量名前缀字符,搜索已经定义的变量,无论是否为空值。

二、字符串操作(长度,读取,替换)

表达式

含义

${#string}

$string的长度

${string:position}

在$string中, 从位置$position开始提取子串

${string:position:length}

在$string中, 从位置$position开始提取长度为$length的子串

${string#substring}

从变量$string的开头,删除最短匹配$substring的子串

${string##substring}

从变量$string的开头,删除最长匹配$substring的子串

${string%substring}

您可能想查找下面的文章:

  • shell 字符串操作(长度,查找,替换)详解

相关文章

  • shell脚本实现批量测试局域网主机是否在线
  • 详谈linux中sar的使用方法
  • 查看linux中某个端口(port)是否被占用的方法
  • Shell脚本实现监控iptables规则是否被修改
  • Linux执行.sh文件时提示No such file or directory该怎么办(三种解决办法)
  • Linux Shell脚本系列教程(四):使用函数添加环境变量
  • 比较两个字符串是否相等的shell代码
  • 利用shell删除数据表中指定信息和字段对应的文件
  • Shell实现的iptables管理脚本分享
  • Shell脚本数组操作小结

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • awk基础知识小结第1/2页
    • linux shell命令快捷获得系统帮助(一)[man-pages定义规范]
    • awk统计文件中某关键词出现次数的命令
    • shell实现自动备份mysql、整站数据的两个脚本分享
    • Shell时间(date)相关命令
    • linux shell查看当前外网IP
    • Linux下统计当前文件夹下的文件个数、目录个数
    • linux shell实现求一个多维数组中的最大和最小值
    • 使用iconv批量改变文件编码的shell脚本
    • python实现Linux异步epoll代码

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有