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

  • 相关阅读:
    POJ 1015 Jury Compromise【DP】
    POJ 1661 Help Jimmy【DP】
    HDU 1074 Doing Homework【状态压缩DP】
    HDU 1024 Max Sum Plus Plus【DP,最大m子段和】
    占坑补题。。最近占的坑有点多。。。
    Codeforces 659F Polycarp and Hay【BFS】
    Codeforces 659E New Reform【DFS】
    Codeforces 659D Bicycle Race【计算几何】
    廖大python实战项目第四天
    廖大python实战项目第三天
  • 原文地址:https://www.cnblogs.com/pony1223/p/3456702.html
Copyright © 2011-2022 走看看