变量的高级操作

                                              一  字符串切片

            ${变量:位置起点}

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

  例子:

    [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 16:56
下一篇 2017-04-16 17:48

相关推荐

  • 马哥教育网络班21期+第7周课程练习

    1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; [root@localhost ~]#mke2fs -t ext4 -b 2048 -m 2 -L &qu…

    Linux干货 2016-08-15
  • 树 非线性结构 树是n(n >= 0)个元素的集合: (1)每个元素称为结点(node); (2)有一个特定的结点,称为根结点或根(root); (3)除根结点外,其余结点被分成m(m>=0)个互不相交的有限集合,而每个子集又都是一棵树(称为原树的子树Subtree) 注意 n = 0时,称为空树 树只有一个特殊的没有前驱的元素,称为树的根(Ro…

    2017-10-16
  • NET25-第7周作业

    1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; [root@node1 ~]# fdisk /dev/sdb Device contains neither a valid DOS partition table, nor Sun, SGI o…

    Linux干货 2017-03-15
  • 马哥教育网络班21期+第4周课程练习

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@itop ~]# cp -r /etc/skel /home/tuserl [root@itop ~]# chmod -R&nbsp…

    Linux干货 2016-08-01
  • LVS详解

    LVS详解 LVS(Linux Virtual Server),意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。 LVS 是一个工作在四层的负载均衡器,实现和 iptables/netfilter 类似,工作在内核空间的 TCP/IP 协议栈上,LVS 工作在 INPUT H…

    Linux干货 2016-11-11
  • Centos 系列bind搭建DNS服务加固

        在centos系列版本上运用bind搭建dns服务教程已经有很多,先感谢前人做出的贡献,引用两篇博文,讲解的非常详细。 地址是: 主dns搭建:http://blog.csdn.net/reblue520/article/details/52537014 从dns搭建:http://blog.csdn.net/reblue520/…

    Linux干货 2017-04-16

评论列表(1条)

  • renjin
    renjin 2017-04-21 11:23

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