zoukankan      html  css  js  c++  java
  • shell-早间学习,每日一点-5

    http://www.cnblogs.com/liuling/p/2013-8-4-01.html
    http://www.cnblogs.com/stephen-liu74/category/326653.html

    http://blog.csdn.net/varistor/article/details/8160585

    给用户一个读与执行的权限(chmod u+rx  aa.sh),就可以用./aa.sh来执行脚本(这样执行是开启一个子shell来执行的)

    #!(读音:sha-bang)实际是一个2字节的魔法数字,这是指定一个文件类型的特殊标记,它就代表一个可执行的脚本,后面跟一个路径名


    shell内部变量

    $SHELL  显示当前系统用的shell
    $BASH   显示bash路径
    $PWD 结果 等于dirs命令结果
    $GROUPS  当前用户属于的组
    $UID 用户ID号
    $HOME  用户home目录


    预定义变量,适用所有shell,无法更改
    $#   取出位置参数个数
    $*   取出所有位置参数内容
    $?  判断上一次命令执行结果是否正确,0代表正确,非0则不代表不正确
    $1、$2、$3……位置参数  脚本位置参数个数如果超过9要用{}括起来,如${10}
    $_  保存之前执行的命令的最后一个参数


    自定义变量:

    declare / typeset 选项 变量名
    declare 或 typeset 有同样的功能:指定变量属性。如果使用 declare 后面并没有接任何参数,那么 bash 就会主动的将所有的变量名称与内容通通叫出来,就好像使用 set 一样!
    选项:
    -a 将后面的变量定义成为数组 (array)
    -i 将后面的变量定义成为整数(integer)
    -x 将后面的变量变成环境变量,同export 一样,
    -r 将后面的变量设定为只读 ,该变量不可被更改内容,也不能 unset
    -f 列出脚本中的函数

    例如:
    typeset up_url="10.135.169.34"  或者: up_url="10.135.169.34"  建议前一种


    readonly用来设置只读变量
    readonly 变量名
    readonly -f 函数名称
    readonly -a 数组变量



    shell脚本中的一些特殊字符:
    #     后面的内容到行尾都是注释,不会执行(第一行的#!是个例外)
         注意:echo命令中被转义的#不能作为注释,在特定的参数替换结构或数字常量表达式中也不是注释
       如 echo ${PATH#*:}
             echo $((2#101011))   
           转义字符
    ;   命令分隔符,可以用来在一行中写多个命令
    ;;  终止case结构中选项
    ,   逗号链接了一系列的算术操作,虽然里面的内容都被运行了,最后一项被返回
    `  后置引用,命令替换
    :  空命令等价于NOP,也可认为与true作用相同
      可以充当占位符,例如
         if [ ]
         then :      #什么都不做,引出分支
         else
                 .................
          fi
          
    linux终端下的一些常用快捷键,可以加快操作速度的
    Ctrl+a   移到命令行首
    Ctrl+e    移到命令行尾
    Ctrl+u   删除到行首的命令
    Ctrl+k   删除到行尾的命令
    Ctrl+a后再Ctrl+k  或者Ctrl+e后再Ctrl+u就是删除输入的全部命令
    Ctrl+c  终止当前任务
    Ctrl+d  登出shell
    Ctrl+l  相当于clear,清屏
    Esc+.   重新调用前一个命令中的参数,非常有用!
    dd 删除当前行
    另外加上SIS 查看日志常用命令需要也整理一下:
    比如:Shift +G ,看下笔记,整理一下


    9.if判断都有哪些格式?

    格式一:
    if  [  ];then
    ........
    fi


    等价于
    if  [  ]
    then
    ...........
    fi


    格式二:
    if  [ ]
    then
    ..........
    else
    ..........
    if


    格式三:
    if [ ]
    then
    ......
    elif [ ]
    then
    .......
    fi


    格式四:
    if [ ]
    then
    ......
    elif [ ]
    then
    .......
    elif [ ]
    then
    .......
    elif [ ]
    ........
    elif
    .......
    fi


    if-grep结构:


    if grep -q aa  book.txt
    then echo "book.txt至少有一个字符串aa"
    fi

    待继续:
    http://blog.csdn.net/varistor/article/details/8160585

  • 相关阅读:
    hdu5714 拍照[2016百度之星复赛C题]
    hdu5715 XOR 游戏 [2016百度之星复赛D题]
    AFO
    BZOJ 3566 概率充电器
    BZOJ 3427 Bytecomputer
    BZOJ 4513 储能表
    BZOJ 3667 Miller_Rabin
    BZOJ 4557 侦察守卫
    BZOJ 3894 文理分科
    SUOI #69 奔跑的Aqua
  • 原文地址:https://www.cnblogs.com/pony1223/p/3456702.html
Copyright © 2011-2022 走看看