Linux 入门基础二

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

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

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

          Linux 入门基础二
         
    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

Linux 入门基础二

    3、一些注意的点 :

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

        2) shell 传递参数:  

            ./test.sh aa 玉枕纱橱

            Linux 入门基础二

             Linux 入门基础二

            ·接收参数的写法:

               $0 代表执行的文件名

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

               $# 代表传入参数的个数

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

       3)shell 数组

           ./test.sh

          Linux 入门基础二

         Linux 入门基础二

         ·数组写法:

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

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

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

       4)shell 基本运算符:

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

         · 加法   :    ./test.sh

           Linux 入门基础二

           Linux 入门基础二

         ·注意:

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

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

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

            Linux 入门基础二