Linux 入门基础二

一、shell 
    1、先说下 vim :Vim是从 vi 发展出来的一个文本编辑器。vim分为3种模式:命令模式,输入模式 和底线命令模式。
        a、命令模式: 用户刚刚启动vi /vim ,便进入了命令模式。此状态下敲击键盘的动作会被vim 识别为命令,而非输入字符。常见得是:
             i: 切换到输入模式,可以输入字符
             x: 删除当前光标所在处的字符
             :切换到 底线命令模式,可以在最后一行输入命令(已经进入 输入模式的 可以通过esc 键 回到命令模式)

            
        b、输入模式:在命令模式下输入i 进入输入模式。输入模式下的常用按键:
            ·字符按键以及shift组合,输入字符
            ·enter 回车键换行
            ·back space 退格键,删除光标前的一个字符
            ·del 删除键,删除光标后的一个字符
            ·方向键  在文本中移动光标
            ·home /end  移动光标移动到 首行 /行尾
            ·insert 切换光标为输入/替换模式,光标将变成竖线 或下换线
            ·esc 退出输入模式,切换到命令模式

            
        c、底线命令模式 
             在命令模式下 按 : (英文冒号)便进入了底线命令模式。该模式下可以输入单个或多个字符的命令,
             基本命令为 q  退出程序   和 w 保存文件 
             按esc 可随时退出底线命令模式

          
         
    2、打开文本编辑器(可以使用vi/vim命令来创建文件),新建一个文件test.sh,扩展名为sh(sh代表shell),
         扩展名并不影响脚本执行,见名知意就好,如果你用php写shell 脚本,扩展名就用php好了。    
         输入一些代码 ,第一行一般是这样的 :
        #!/bin/bash
        echo "Hello World !"
        "#!" 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种Shell。
        echo命令用于向窗口输出文本。
        注意:$ chmod +x test.sh  给文件添加执行权限
        设置所有用户可读取文件  chmod ugo+r wstest.sh

    3、一些注意的点 :

        1) 变量  $name   和  ${name} 区别 :在使用上没有任何区别,但加{} 是为了区分变量名的界限 。

        2) shell 传递参数:  

            ./test.sh aa 玉枕纱橱

            

             

            ·接收参数的写法:

               $0 代表执行的文件名

               $1 代表传入的第一个参数

               $# 代表传入参数的个数

               $* 代表以一个单字符串显示所有向脚本传递的参数。
                    如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。

       3)shell 数组

           ./test.sh

          

         

         ·数组写法:

              读取数组元素值的一般格式是:${array_name[index]}

              读取数组中所有元素:${array_name[@]}

              和字符串一样,加#号代表长度

       4)shell 基本运算符:

           shell 和其他编程语言一样,支持多种运算符。原生的bash 不支持简单的数学运算,但可以通过awk 或 expr 来实现。expr 常用。expr 是一款表达式计算工具,是用它能完成表达式的求值操作。

         · 加法   :    ./test.sh

           

           

         ·注意:

               表达式和运算符之间要有空格,例如 1+1 是不对的,必须写成 1 + 1。

               完整的表达式要被 ` ` 包含,注意使用的是 反引号` 而不是单引号 ',在 Esc 键下边。

               乘号(*)前边必须加反斜杠(\)才能实现乘法运算;

            

      5)shell 的 echo命令 :用于字符串的输出,格式为 echo string 
            可以使用echo 完成复杂的输出结果:
           ·显示转义字符: echo "\" It is a test \" "       
                                   结果是 :"It is a test"
           ·显示换行 :echo -e "OK! \n"     # -e 是开启转义

              

         

     6)test 命令 :用于检查某个条件是否成立,可以从 数值,文件,字符串3个方面检查。
          语法为  test  1 -eq 1
          代码中的 [] 执行基本的算数运算,注意等号两边不能有空格。

         ./test.sh

        

        

       test  的 数值测试:

         

         ·test 的字符串测试:

        ./test.sh

        

        

      字符串测试:

        =                 等于则为真
        !=                不相等则为真
        -z 字符串    字符串的长度为零则为真
        -n 字符串    字符串的长度不为零则为真

      ·test 的文件测试:

        -e 文件名   如果文件存在则为真
        -r 文件名    如果文件存在且可读则为真
        -w 文件名   如果文件存在且可写则为真
        -x 文件名    如果文件存在且可执行则为真
        -s 文件名    如果文件存在且至少有一个字符则为真
        -d 文件名    如果文件存在且为目录则为真
        -f 文件名     如果文件存在且为普通文件则为真
        -c 文件名    如果文件存在且为字符型特殊文件则为真
        -b 文件名    如果文件存在且为块特殊文件则为真    

      此外,Shell 还提供了与( -a )、或( -o )、非( ! )三个逻辑操作符用于将测试条件连接起来,其优先级为: ! 最高, -a 次之, -o 最低。

       测试: ./test.sh

     

      

      

       注意:文件需要带后缀。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值