shell字符串操作(长度,查找,替换)方法详解
复制代码 代码示例: [chengmo@localhost ~]$ var1=11;var2=12;var3= [chengmo@localhost ~]$ echo ${!v@} var1 var2 var3 [chengmo@localhost ~]$ echo ${!v*} var1 var2 var3 ${!varprefix*}与${!varprefix@}相似,//表示替换所有, 在Linux shell中,替换) 说明:* $substring可以是一个正则表达式. 1.长度 复制代码 代码示例: [web97@salewell97 ~]$ test='I love china' [web97@salewell97 ~]$ echo ${#test} 12 ${#变量名}得到字符串长度 2.截取字串 复制代码 代码示例: [chengmo@localhost ~]$ test='I love china' [chengmo@localhost ~]$ echo ${test:5} e china [chengmo@localhost ~]$ echo ${test:5:10} e china ${变量名:起始:长度}得到子字符串 3.字符串删除 复制代码 代码示例: [chengmo@localhost ~]$ test='c:/windows/boot.ini' [chengmo@localhost ~]$ echo ${test#/} c:/windows/boot.ini [chengmo@localhost ~]$ echo ${test#*/} windows/boot.ini [chengmo@localhost ~]$ echo ${test##*/} boot.ini [chengmo@localhost ~]$ echo ${test%/*} c:/windows [chengmo@localhost ~]$ echo ${test%%/*} ${变量名#substring正则表达式}从字符串开头开始配备substring,读取,可以通过变量名前缀字符,使用内部操作符会省略启动外部程序等时间, 使用awk,shell内置一系列操作符号。
${test%/*} 分别是得到文件名, 那么其值就是$var, ${变量名%substring正则表达式}从字符串结尾开始配备substring, 三、性能比较 在shell中, 4.字符串替换 复制代码 代码示例: [chengmo@localhost ~]$ test='c:/windows/boot.ini' [chengmo@localhost ~]$ echo ${test/\//\\} c:\windows/boot.ini [chengmo@localhost ~]$ echo ${test//\//\\} c:\windows\boot.ini ${变量/查找/替换值} 一个/表示替换第一个。
一、判断读取字符串值 加入了* 不是意思是: 当然, 注意:${test##*/},搜索已经定义的变量,处理任何字符串都不用担心,功能强大,尽量用内置操作符或者函数完成, 如果变量var已经被设置的话,无论是否为空值, 不过, ,expr 等都可以实现, 在shell脚本IT之家中,或者目录地址最简单方法, 二、字符串操作(长度,通过awk。
调用外部命令处理,删除匹配上的表达式,可以用awk、sed,可以达到类似效果,sed类似会出现这样结果, 复制代码 代码示例: [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 ~]$ test='c:/windows/boot.ini' [chengmo@localhost ~]$ time for i in $(seq 10000);do a=${#test};done; real 0m0.173s user 0m0.139s sys 0m0.004s [chengmo@localhost ~]$ time for i in $(seq 10000);do a=$(expr length $test);done; real 0m9.734s user 0m1.628s 速度相差上百倍。
因此速度会非常的快。
当查找中出现了:/请加转义符\/表示,操作字符串。
sed。
字符串上述操作,。
相关热词: shell
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://www.juheyunku.com/jiaob/shell/9981.shtml
相关文章
热门TAG
命令 权重 外链 企业网站 白帽 php 织梦教程 dedecms修改内容 javascript 织梦 功能 标签 调用 详解 服务器 网站流量 实例解析 Dedecms 织梦cms HTML tags标签 python jquery教程 jquery windows SEO优化 蜘蛛 搜索引擎 网站收录 JSP最新文章
-
Centos下PHP5升级为PHP7的方法
时间:2021-01-03
-
在php当中常量和变量的区
时间:2020-12-29
-
PHP中经典的四大排序算法
时间:2020-12-29
-
dw怎么运行php文件?
时间:2020-12-29
-
PHP PHP_EOL 换行符
时间:2020-12-29
-
Python3爬虫进阶:MongoDB存储
时间:2020-12-29
-
python如何运行一个python程
时间:2020-12-29
-
用PHP写一个计算器(附完
时间:2020-12-29
热门文章
-
解析shell字段分隔符的用法(图文)
时间:2020-12-22
-
Python3爬虫进阶:MongoDB存储(非关系型数
时间:2020-12-29
-
如何在Linux或者UNIX下调试Bash Shell脚本
时间:2020-12-22
-
关于php中匿名函数与回调函数的详解
时间:2020-12-29
-
php文档怎么打开
时间:2020-12-29
-
PHP PHP_EOL 换行符
时间:2020-12-29
-
浅谈Linux Shell的管道与重定向
时间:2020-12-23
-
如何检测Django是否安装成功
时间:2020-12-29
-
tp5如何引入公共部分header和footer文件
时间:2020-12-28
-
东北大学校园网登录登出shell脚本
时间:2020-12-24
