字符串截取的方法
  方法一:使用${}表达式
    格式:${var:起始位置:长度}
  方法二:使用expr substr
    格式:expr substr "$var" 起始位置 长度
  方法三:使用cut工具
    格式:echo $var | cut -b 起始位置 结束位置

取目录位置
  格式:dirname "字符串"
取文档的基本名称
  格式:basename "字符串"

字符串替换的方法
  只替换第一个匹配的结果
    格式:${var/old/new}
  替换全部匹配的结果
    格式:${var//old/new}

字符串掐头
  从左向右,最短匹配删除
    格式:${变量名#*关键词}
  从左向右,最长匹配删除
    格式:${变量名##*关键词}
字符串去尾
  从右向左,最短匹配删除
    格式:${变量名%关键词*}
  从右向左,最长匹配删除
    格式:${变量名%%关键词*}

批量修改文件后缀名

[lin@shidai ~]$ cat mv.sh
#!/bin/bash
for FILE in *.doc
do
mv $FILE ${FILE%.doc}.txt
done

变量初始值的检测及设置
  取值,${var:-word}
    若变量var已经存在且非null,则返回$var的值
    否则返回临时字符串word,变量var值不变
  赋值,${var:=word}
    若变量var已经存在且非null,则返回$var的值
    否则返回字符串word,且把word赋值给var变量

shell数组定义/赋值
  方法一:整体赋值
    格式:数组名=(value1 value2 value3)
    示例:VU=(user1 ftp mail python)
  方法二:为单个元素赋值
    格式:数组名[下标]=值
    示例:VU[0]=ftp,VU[1]=mail,VU[2]=python
输出数组元素
  获取单个元素
    格式:${数组名[下标]}
  获取所有元素
    格式:${数组名[@]}
  获取数组元素个数(长度)
    格式:${#数组名[@]}
  获取连续的多个数组元素
    格式:${数组名[@]:起始下标:元素个数}

正则表达式

............................

shell- 字符串处理 、 扩展的脚本技巧 、 正则表达式的更多相关文章

  1. shell及脚本3——正则表达式

    一.正则表达式 1.1. 什么是正则表达式 正则表达式是处理字符串的方法,以行为单位,通过一些特殊符号的辅助,让用户可以轻易进行查找.删除.替换某特定字符串的操作. 1.2. 正则表达式与通配符的区别 ...

  2. Linux脚本shell字符串处理

    Linux脚本shell字符串处理,基本都有了,看着搜吧 TLDP教堂 shell中if条件字符串.数字比对,[[ ]]和[ ]区别 Linux 之 shell 比较运算符 Linux Shell编程 ...

  3. 【转】shell字符串截取

    shell字符串的截取的问题: 一.Linux shell 截取字符变量的前8位,有方法如下: 1.expr substr “$a” 1 8 2.echo $a|awk ‘{print substr( ...

  4. shell自动交互之expect脚本_转

    转自:linux expect详解(ssh自动登录) shell脚本实现ssh自动登录远程服务器示例: #!/usr/bin/expect spawn ssh root@192.168.22.194 ...

  5. 【Shell 编程基础第二部分】Shell里的流程控制、Shell里的函数及脚本调试方法!

    http://blog.csdn.net/xiaominghimi/article/details/7603003 本站文章均为李华明Himi原创,转载务必在明显处注明:转载自[黑米GameDev街区 ...

  6. Chrome扩展开发之二——Chrome扩展中脚本的运行机制和通信方式

    目录: 0.Chrome扩展开发(Gmail附件管理助手)系列之〇——概述 1.Chrome扩展开发之一——Chrome扩展的文件结构 2.Chrome扩展开发之二——Chrome扩展中脚本的运行机制 ...

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

    linux shell 字符串操作(长度,查找,替换)详解 在做shell批处理程序时候,经常会涉及到字符串相关操作.有很多命令语句,如:awk,sed都可以做字符串各种操作. 其实shell内置一系 ...

  8. Shell 字符串比较

    转自网络 Shell字符串比较 收藏 Shell 中整数比较方法及字符串的比较方法,如等于,不等于,大于,大于等于,小于,等等. 二元比较操作符,比较变量或者比较数字.注意数字与字符串的区别. --- ...

  9. shell字符串操作详解

    shell字符串操作详解的相关资料. 1.shell变量声明的判断  表达式 含义 ${var} 变量var的值, 与$var相同 ${var-DEFAULT} 如果var没有被声明, 那么就以$DE ...

随机推荐

  1. Generate class from database table How can i generate a class from a table at a SQL Server?

    Set @TableName to the name of your table. declare @TableName sysname = 'TableName' declare @Result v ...

  2. duilib进阶教程 -- 在MFC中使用duilib (1)

    由于入门教程的反响还不错,因此Alberl就以直播的形式来写<进阶教程>啦,本教程的前提: 1.请先阅读<仿迅雷播放器教程> 2.要有一定的duilib基础,如果还没,请先阅读 ...

  3. [Converge] Feature Selection in training of Deep Learning

    特征相关性对于DL的影响 链接:https://www.zhihu.com/question/47908908/answer/110987483 经验一:  1. 输入特征最好不相关.如果某些维输入的 ...

  4. orcal数据库基本操作

    1.连接 SQL*Plus system/manager 2.显示当前连接用户 SQL> show user 3.查看系统拥有哪些用户 SQL> select * from all_use ...

  5. 如何用Baas快速在腾讯云上开发小程序-系列3 :实现腾讯云COS API调用

    版权声明:本文由贺嘉 原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/640268001487425627 来源:腾云阁 h ...

  6. 一款Redis客户端,可以作为Redis Desktop manager的有效补充或替代

    一.由来 对于redis客户端,我和大多数人一样,都是用Redis Desktop Manager. 但我发现个问题,我的版本是0.9.1.771. 我这个版本有个问题,就是如果value太长的话,不 ...

  7. 跟bWAPP学WEB安全(PHP代码)--XPath注入

    XML/Xpath注入 看了下,A2里面是认证与会话管理的破坏或称之为绕过,没有特别要写的,很多就是小问题,可能会将这类问题放在最后写一下.一篇博客,这里还是更多的着重在能够获取信息或者服务器权限的漏 ...

  8. iOS - 极光推送证书的创建及过期处理

    无论iPhone还是安卓,我们用到的所有应用基本都有推送通知服务,因为这是应用很好的推广方式,有新产品了.有新更新了通知下用户及时查看.但Apple有点特殊,它的推送需要发到苹果服务器上中转一下,这就 ...

  9. How to view assertions in the Verdi waveform viewer

    In the Cadence Simvision waveform viewer, I can see every assertions listed as a hierarchical signal ...

  10. Python装饰器探险

    关于python装饰器的理解和用法,推荐廖雪峰老师和这一篇博客以及知乎 以下代码均已手动敲过,看完本篇内容,包你装饰器小成! 装饰器实际上就是为了给某程序增添功能,但该程序已经上线或已经被使用,那么就 ...