变量的高级操作

                                              一  字符串切片

            ${变量:位置起点}

   由指定位置开始截取到字符串结束。

  例子:

    [root@localhost ~]# myname=yeliangchen
    [root@localhost ~]# echo ${myname:4}
    angchen

           ${变量:起点:长度}

          例子:

             [root@localhost ~]# echo ${myname:2:3}
              lia

                            二 计算字符串长度

            ${#变量名称} :传回变量的字符串长度。

        例子:

      [root@localhost ~]# file=/user/bin/name
      [root@localhost ~]# echo {#file}
     {#file}
     [root@localhost ~]# echo ${#file}
     14

    另外一种方法:expr length   “$filename”

                             三 有前面开始,对比变量值,删除最短相符合的字符串

       ${变量#样式}

       例子:

      [root@localhost ~]# filename=”/bin/bash/http”
      [root@localhost ~]# echo ${filename#/*/}
      bash/http

      

                          四   有前面开始,对比变量值,删除最长相符合的字符串

    ${变量##样式}

     [root@localhost ~]# echo ${filename##/*/}
     http

    

            五   有后面开始,对比变量值,删除最短相符合的字符串

         ${变量%样式}

        例子:[root@localhost ~]# filename=”/bin/bash/nigix”
[root@localhost ~]# echo ${filename%/*}
/bin/bash

                 六   有后面开始,对比变量值,删除最长相符合的字符串

         ${变量%%样式}

        例子:

     [root@localhost ~]# filename=”www.cctv.com”
    [root@localhost ~]# echo “${filename%%.*}”
    www

                         

                           七 待测变量及默认值

           ${待测变量:=默认值}

        例子:[root@localhost ~]# unset myname
[root@localhost ~]# echo ${myname:=”fsy”}
fsy

    

    

原创文章,作者:fsy,如若转载,请注明出处:http://www.178linux.com/73434

(0)
fsyfsy
上一篇 2017-04-16
下一篇 2017-04-16

相关推荐

  • LVS_DR配置

    DR : 192.168.29.150 VIP:192.168.29.100 RS1: 192.168.29.110 VIP:192.168.29.100 RS2:192.168.29.120 VIP:192.168.29.100 RS 配置 1 配置VIP [root@local ~]# ifconfig lo:0 192.168.29.100 netma…

    2017-06-30
  • 多方面修复linux系统

    在这篇文章,您将看到以下方面的修复方法: ●内核文件和虚拟 ●grub.conf ●grub目录 ●boot分区 ●fstab文件 ●root密码破解   首先,要想很愉快的修复linux启动的各种问题,就必然要把linux的启动流程搞清楚。 1. 加载 BIOS 的硬件信息和进行自我测试,并依据设定取得第一个可开机的装置; 2. 读取并执行第一个…

    Linux干货 2016-09-13
  • 编译内核制作小型的linux

    1.  前言       今天我将会给大家带来如何定制一个属于自己linux系统,也就是编译内核,那为什么要编译内核呢? 内核,是一个操作系统的核心。它负责管理系统的进程、内存、设备驱动程序、文件和网络系统管理,决定着系统的性能和稳定性。Linux作为一个自由软件,在广 大爱好者的支持下,内核版本不…

    Linux干货 2016-08-03
  • redis/twemproxy 客户端连接异常

    对于一个DBA,客户端连接异常问题可以说是家常便饭的事情,处理多了都想吐。 root cause无疑发生在三个地方,先找自身的原因,依次排查下去: 1)服务器端db的负载,如果负载太高,创建socket太慢引起超时。另外服务器端socket的个数太多,也可以导致创建连接需要很长的时间或者创建连接不成功。 2)网络是够有抖动,包括lvs/twemproxy重启…

    Linux干货 2015-04-03
  • 使用fail2ban防止暴力破解ssh及vsftpd密码

    此文介绍一个linux下通过监控日志防止密码被暴力破解的软件-fail2ban。fail2ban支持常用的服务,如sshd, apache, qmail, proftpd, sasl, asterisk等的密码验证保护,当发现暴力破解的迹像时,可以通过iptables, tcp-wrapper, shorewall等方式阻止此IP的访问。 python安装 …

    Linux干货 2015-03-04
  • 马哥教育网络20期+第7周练习博客

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;    (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; [root@7b ~]#&nbsp…

    Linux干货 2016-07-24

评论列表(1条)

  • renjin
    renjin 2017-04-21 11:23

    主要介绍了linux下变量的赋值,建议把一周内学的内容多总结一下,可以把终端命令或代码放入到”插入程序代码”中去