shell

作者: 朱溪江 | 来源:发表于2019-01-05 11:55 被阅读13次

    第一章、变量

    自定义变量
    1.什么是变量
    用一段固定的字符串,代替不固定的字符串
    2.如何定义变量,如何定义隐示变量
    变量名=变量值
    name=zhutong
    read -p "请输入密码: " -s -t pass
    3.调用变量

    $name    ${name}
    

    4.输出变量
    echo $name
    5.变量的切片

    url=www.baidu.com
    echo ${url:4:5} #取索引号为4后面的5个
    

    环境变量

    5.环境变量的作用
    环境变量可以被子shell使用(继承)
    6.如何定义环境变量

    export $name
    export $name=zhutong
    

    位置变量和预定义变量

    8.什么是预定义变量

    $1 $2 .............$9
    

    9.为什么使用位置变量
    方便 灵活 用户自定义

    for i in `seq $1`
    do
      echo $1
    done
    

    10.read 和$1 的区别?
    read需要会话
    11.预定义变量有哪些?

    $*  所有参数
    $@  所有参数
    $#  参数字符个数
    $$   PID
    $?  返回值
    $!   上一个进程的pid
    

    第二章、流程控制if判断

    13.为什么使用流控?
    因为事件有多种可能
    14.条件测试分哪三种?
    数值测试
    字符测试
    文件测试
    15.文件测试的语法和示例
    [ -f /1.txt ] 测试该文件是否存在且是否是文件
    [ -d /home ] 测试是不是目录
    16.数值测试i

    [   2 -eq  2   ]          测试两个数值的关系
    [   $num1  -gt    $num2  ]
    

    17.字符测试

    [ $name1 == $name2  ]       测试字符1是字符2
    [ $name1 != $name2  ]       测试字符1不是字符2
    
    1. if 判断单分支语句结构
      没有httpd 并安装
    httpd  -v &> /dev/null
    if  [ $? -ne 0 ];then
      yum -y install httpd 
    fi
    
    

    19.if 判断双分支语句结构?
    没有装httpd 则安装
    安装了,则告知消息

    if [];then
      echo
      else
    fi
    
    

    20.解决交互问题

    yum install -y expect tcl tclx tcl-devel
    spawn  启动shell程序
    expect  {期望,对话的开始}
    
    
    #!/usr/bin/expect
    spawn ssh root@192.168.0.111
    
    expect {
            "yes/no" { send "yes\r";exp_continue }
            "password:" { send "666666\r" };
    }
    interact  #保留程序
    expect  eof #结束程序 
    
    
    
    

    相关文章

      网友评论

          本文标题:shell

          本文链接:https://www.haomeiwen.com/subject/khcrrqtx.html