变量的高级操作

                                              一  字符串切片

            ${变量:位置起点}

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

  例子:

    [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

相关推荐

  • bash中的变量详解

        在bash中,巧妙地运用变量,能够大大减轻编程的工作量,下面让我们来详细了解一下bash的变量. bash中的变量种类:     根据变量的生效范围等标准:         本地变量:生效范围…

    Linux干货 2016-08-18
  • Vim

    vim编辑器         vim,可谓文本编辑界的大哥,功能强大无比,是进阶版的vi, vim 不但可以用不同颜色显示文字内容,还能够进行诸如 shell script, C program等程序编辑功能。 vim是一种模式化的编辑器  (vim自带教程,命令行中输…

    Linux干货 2016-08-09
  • https介绍

    什么是https HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全。为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。SSL目前的版本是3.0,被IETF(Internet Engineering T…

    Linux干货 2017-12-04
  • linux程序包管理

         首先linux软件程序包和windows中的程序包是不兼容的,所以要在linux上使用windows上的程序,需要使用虚拟化工具。 库级别的虚拟化:     linux : WinE     windows: Cywin 而程序开发语言有多…

    Linux干货 2016-08-24
  • 对文件数据操作命令

    对文件数据操作命令   很多时候,我们都会去计算一次数据里头的的相同类型的数据总数或者查看特性的一些信息,在这个时候我们就需要排序与计算之类的命令来辅助,下面就是几个好用的操作文件数据命令。 文件查看命令:cat, tac cat [OPTION]… [FILE]…     -E: 显…

    Linux干货 2016-08-08
  • 前两周linux基础知识总结

    linux用户权限管理 软链接与硬链接 输入输出重定向 文本处理三剑客vim sed awk 包管理rpm yum 源码包编译安装

    Linux干货 2018-03-17

评论列表(1条)

  • renjin
    renjin 2017-04-21 11:23

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