变量的高级操作

                                              一  字符串切片

            ${变量:位置起点}

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

  例子:

    [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

相关推荐

  • 磁盘配额、软RAID使用、LVM管理

    一.磁盘配额的相关知识 (1)工作原理及方式         *以文件系统为单位启动         *以特定的用户或组为对象       …

    Linux干货 2016-09-06
  • 迁移分区

          1 备份/home    2 创建分区 /dev/sdc1 10G   [root@localhost ~]# du -sh /home   52K /home   3 格式化分区   [root@localhost …

    Linux干货 2017-04-25
  • python写一个通讯录之step by step

    编写过程:     第一步:手动代码堆积         第二步:函数复用         第三步:数据持久化之数据保存         第四步:数据持久化之数据读取       &nbsp…

    Linux干货 2015-03-26
  • CentOS7系统用户空间管理进程systemd详解

    概述:     系统启动过程中,当内核启动完成,后加载根文件系统,后就绪的一些用户空间的服务的管理工作,就交由init进行启动和管理,在CentOS6之前的init的管理方式都类似,相关的内容我们在之前的文章中也做出过介绍。在CentOS7上,init变成了systemd,其管理方式也发生了重大的变化,本章就跟大家欧一…

    Linux干货 2016-09-21
  • #招聘福利#深圳云戈科技有限公司广州分公司/运维工程师/广州/招聘3人

    深圳云戈科技有限公司广州分公司/运维工程师/广州 招聘人数:3人 职位名称:运维工程师 岗位职责:负责大型数据处理系统、交易系统的维护工作。包括系统调优、数据库调优、系统版本升级、系统事件             处理、系统监控与巡检、数据分析与修复、实施应急方案、参数配置、系统扩容与部署、维护报告…

    Linux干货 2016-03-28
  • 第四周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@loalhost ~]# (umask 077; cp -r /etc/skel /home/user1) 2、编辑/etc/group文件,…

    Linux干货 2016-09-06

评论列表(1条)

  • renjin
    renjin 2017-04-21 11:23

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