Shell编程

                                   Shell编程

Shell环境

Linux的Shell种类众多,常见的有:人们并不区分前两个所以/bin/sh可以写成/bin/bash

        Bourne  Shell(/usr/bin/sh或/bin/sh)

        Bourne  Again  Shell(/bin/bash)

        C  Shell(/usr/bin/ksh)

        K  Shell(/usr/bin/ksh)

Shell程序步骤:

       1.创建一个文件,扩展名为  .sh

        2.修改文件的权限为可执行文件

        3.执行

Shell结构

        1.#!  用来指定执行脚本的Shell(#!/bin/sh)

         2.#    注释

         3.命令和控制结构

Shell变量

命名规则:

            1.只能用英文字母,数字和下划线,首个字符不能以数字

    2.中间不能有空格,可以使用下划线

     3.不可以用标点符号和关键字

使用规则:

         1.习惯用大写字母来命名变量

    2.赋值时,“="前后不能有空格

    3.命令的执行结果赋值给变量时,使用反单引号 如:TIME=`date`

    4.使用变量时,使用$变量名  或${变量名}

只读变量:

    使用readonly,此命令可以将变量定义为只读变量,只读变量的值不能改变(eg:readonly my_name=ding)

    

 删除变量:

    使用unset,变量删除后不能再次被使用,unset不能删除只读变量

                     

变量类型:

    临时变量:或局部变量,在脚本命令中定义,仅在当前shell实例中有效,其他启动的程序不能访问局部变量

     永久变量:或环境变量,所有的程序,包括shell启动的程序,都能访问环境变量,有些程序需要环境变量来保证其正常运行。必要的时候shell脚本也可以定义环境变量

Shell字符串

字符串:

        是shell编程中最常用最有用的数据类型(除了数字和字符串,其他不好用)

   字符串可以用单引号、双引号,也可以不用引号。

单引号:

        1.单引号里面的任何字符都会原样输出,单引号字符串中的变量是无效的

   2.单引号字串中不能出现单引号(对单引号使用转义字符也不行)

双引号:

        1.双引号里可以有变量

     2.可以出现转义字符

拼接字符串:

        两种方式:1.无缝拼接

        2.双引号内直接使用变量

获取字符串长度:

                        语法1:${#name}

          语法2:expr length ${name}

提取子字符串:(下标索引从0开始)

              语法:A:${name:startIndex:length}

          ${name:startIndex}

          ${name:0-index:length}

           ${name:0-index}

         B:#、##:从左边开始删除

             #表示从左边删除到第一个指定的字符;

             ##表示从左边删除到最后一个指定的字符

             

             eg:name的字符串从左面开始截取,截取的个数用通配符*表示

              因为不知道具体几个字符,截取到第二个f.

                          A、%%%从右边开始删除。 

                                             %表示从右边删除到第一个指定的字符;

                                             %% 表示从有边删除到最后一个指定的字符。

                                                另注:删除包括了指定的字符本身。

                





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值