zoukankan      html  css  js  c++  java
  • Shell 编程注意点

    (一)判断语句

          [$# -lt 4 ]判断语句,格式[空格 比较对象1 比较符号 比较对象2]

          $# 启动脚本时携带参数个数;参数个数总数。

          $1 代表第一个参数。

          $? 最后一次执行名命令的退出状态,0成功,非0失败。

          -eq 等于;-ne 不等于;-gt 大于;-ge 大于等于; -lt 小于; -le 小于等于;

          数值比较 if [ “$1”  -eq “$2” ],其他比较不需要””引号。

          exit 0 正常退出。exit 1 异常退出,终止程序退出。

    (二) 判断参数

         if [ ! -d $1 ] 判断目录是否不存在

         -e 存在文件。 -d 目录。-L 符号链接。

        -r 可读。 -w 可写。 -x可执行。

        -f 常规文件。 -s 文件长度不为0。-h 软链接。

        文件1 -nt 文件2  如果文件1比文件2新,则为真。

        文件1 -ot 文件2  如果文件1比文件2旧,则为真。

        if [ -z “$pid” ] 判断变量的值是否为空。zero=0 为空返回0,为true。这个例子为单对括号,变量需要加双引号。

        if [[ -z $pid ]] 双对括号变量不需要加双引号。

         if [ -n “$pid” ] 判断变量的值是否为空。name=0 非空返回0,为true.为空返回1,为false。这个例子为单对括号,变量需要加双引号。

         if [[ -n $pid ]] 双对括号变量不需要加双引号。

    (三)sqlplus 结束符号

         sqlplus 用户名/密码@数据库名 <<!或者sqlplus 用户名/密码@数据库名 <<EOF

         EOF是end of file 缩写。

        sql语句结束后需要加!或者EOF.

    (四)ftp用法

        open $hostaddr

        user $username $userpassword

        cd /etl/date

        binary

        mget $grepstr*

        mdel $grepstr*

        put $1

       close

       by

       !

    (五)while read line用法。 为键盘左上方顿号,1旁边。

        while read line

        do

            tbname=echo $line | awk | -F’,’ ‘{print $1}’

            tbspace=echo $line | awk | -F’,’ ‘{print $2}’

           echo $tbname

           echo $tbspace

           sh xxxx

      done < t.ini

    t.ini文件如下

    T1,F1,1

    T2,F2,1

    (六) for 用法

      for((i=1;i<=$1;i++)); do

        echo “$i”

     sqlplus $DB<<EOF&

       @/etl/$2.sql $i

    (七)export 设置或显示环境变量

    export JAVA_HOME=/etl/bin

  • 相关阅读:
    HDU-3336-Count the string(扩展KMP)
    洛谷-P3805-Manacher模板
    洛谷-p5410-扩展KMP模板
    HDU-2594-Simpsons' Hidden Talents(kmp, 扩展kmp)
    POJ-3080-Blue jeans(KMP, 暴力)
    [办公应用]两个单独的列数据快速变为两列匹配关联数据
    [办公应用]如何将单词中的部分字母加下划线
    [办公应用]word 2007:全屏快捷键,让复制图片保持原样大小(office 全屏快捷键)
    [办公自动化]如何让excel图表标签中显示最新值数据
    [计算机故障处理]无法访问网络共享资源
  • 原文地址:https://www.cnblogs.com/yuchunju/p/10670746.html
Copyright © 2011-2022 走看看