变量的高级操作

                                              一  字符串切片

            ${变量:位置起点}

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

  例子:

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

相关推荐

  • Linux 第六天: (08月03日) 练习和作业

    Linux 第六天: (08月03日) 练习和作业        当用户xiaoming对/testdir目录无执行权限时, 无法做哪些操作? 无法 ls -l 无法cd     当用户xiaoqiang对/testdir目录无读权限时, 无法做哪些操作? 无法查看目录文件列表   &nb…

    Linux干货 2016-08-08
  • 高级文件系统管理

    高级文件系统管理 配置配额系统 在内核中执行 以文件系统为单位启用 对不同组或者用户的策略不同 根据快或者节点限制,软限制 soft 硬限制hart 初始化 分区挂载选项 usrquota,grgquota 初始化数据库:quotacheck 执行配置 开启或者取消 quotaon ,quotaoff 直接编辑配额 edquota username 在she…

    Linux干货 2017-05-03
  • 系统管理之Systemd详解(centos7)

    这篇着重讲解下Syetemd的相关知识,systemd可以说是centos7上的重大改革,功能之强大媲美一个操作系统,那下面就从以下几点来进行讲解:CentOS7启动Unit介绍服务管理和查看启动排错破解口令修复grub2 启动流程: post–>BISO–>bootloader(MBR)–>kernel(ramdisk)–>…

    Linux干货 2016-09-21
  • linux内核(kernel)版本号的意义

      在linux下有一个目录,即/usr/src/kernels/目录,下面记载着一个linux系统的内核文件, 例如:2.6.18-164.el5-x86_64、2.6.18-8.el5-x86_64和2.6.18-194.el5-x86_64等,这些文件编号意味着什么呢?例如2.6.18代表着什么?el5代表着什么?x86_64又代表着什么? …

    Linux干货 2016-01-14
  • iptables介绍和使用

    iptables/netfilter:    Packets Filter Firewall:          包过滤型防火墙:  Firewall:隔离工具,工作于主机或网络的边缘处,对经由的报文根据预先定义的规则(识别标准)进行检测,对于能够被规则匹配到的报文实行…

    Linux干货 2017-04-29
  • 推荐-File System manager

    文件系统(File system) :     文件系统概要    文件系统的分类    文件系统的管理工具             mkfs btrfs ext xfs&nbsp…

    Linux干货 2016-03-26

评论列表(1条)

  • renjin
    renjin 2017-04-21 11:23

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