<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-314  評論-209  文章-0  trackbacks-0
    測試平臺:RHEL4.5

    一、最簡單的shell里調(diào)用sqlplus.


    $ vi test1.sh

    #!/bin/bash
    sqlplus -S /nolog > result.log <<EOF
    set heading off feedback off pagesize 0 verify off echo off
    conn u_test/iamwangnc
    select * from tab;
    exit
    EOF

    $ chmod +x test1.sh
    $ ./test1.sh

    二、把sqlplus執(zhí)行結(jié)果傳遞給shell方法一

    注意sqlplus段使用老板鍵`了, 賦變量的等號兩側(cè)不能有空格.

    $ vi test2.sh

    #!/bin/bash
    VALUE=`sqlplus -S /nolog <<EOF
    set heading off feedback off pagesize 0 verify off echo off numwidth 4
    conn u_test/iamwangnc
    select count(*) from tab;
    exit
    EOF`
    if [ "$VALUE" -gt 0 ]; then
            echo "The number of rows is $VALUE."
            exit 0
    else
            echo "There is no row in the table."
    fi

    $ chmod +x test2.sh
    $ ./test2.sh

    三、把sqlplus執(zhí)行結(jié)果傳遞給shell方法二

    注意sqlplus段使用 col .. new_value .. 定義了變量并帶參數(shù)exit, 然后自動賦給了shell的$?

    $ vi test3.sh

    #!/bin/bash
    sqlplus -S /nolog > result.log <<EOF
    set heading off feedback off pagesize 0 verify off echo off numwidth 4
    conn u_test/iamwangnc
    col coun new_value v_coun
    select count(*) coun from tab;
    exit v_coun
    EOF
    VALUE="$?"
    echo "The number of rows is $VALUE."

    $ chmod +x test3.sh
    $ ./test3.sh

    四、把shell程序參數(shù)傳遞給sqlplus

    $1表示第一個參數(shù), sqlplus里可以直接使用, 賦變量的等號兩側(cè)不能有空格不能有空格.

    $ vi test4.sh

    #!/bin/bash
    NAME="$1"
    sqlplus -S u_test/iamwangnc <<EOF
    select * from tab where tname = upper('$NAME');
    exit
    EOF

    $ chmod +x test4.sh
    $ ./test4.sh ttt

    五、為了安全要求每次執(zhí)行shell都手工輸入密碼

    $ vi test5.sh

    #!/bin/bash
    echo -n "Enter password for u_test:"
    read PASSWD
    sqlplus -S /nolog <<EOF
    conn u_test/$PASSWD
    select * from tab;
    exit
    EOF

    $ chmod +x test5.sh
    $ ./test5.sh

    六、為了安全從文件讀取密碼

    對密碼文件設(shè)置權(quán)限, 只有用戶自己才能讀寫.

    $ echo 'iamwangnc' > u_test.txt
    $ chmod g-rwx,o-rwx u_test.txt
    $ vi test6.sh

    #!/bin/bash
    PASSWD=`cat u_test.txt`
    sqlplus -S /nolog <<EOF
    conn u_test/$PASSWD
    select * from tab;
    exit
    EOF

    $ chmod +x test6.sh
    $ ./test6.sh

    --End--
    posted on 2010-04-01 12:05 xzc 閱讀(4797) 評論(0)  編輯  收藏 所屬分類: Oraclelinux/unix
    主站蜘蛛池模板: 免费看成人AA片无码视频羞羞网| 国产永久免费高清在线| 亚洲性无码一区二区三区 | 好吊色永久免费视频大全| 亚洲国产精品无码成人片久久| 亚洲国产成人精品女人久久久| 久久国产乱子精品免费女| 久久亚洲中文字幕精品一区四| 国产精品视频免费| 亚洲免费观看网站| 你懂得的在线观看免费视频| 久久成人永久免费播放| 你懂得的在线观看免费视频| 精品免费视在线观看| 巨胸狂喷奶水视频www网站免费| 亚洲六月丁香婷婷综合| 亚洲AV永久无码精品| 亚洲VA中文字幕无码毛片| 亚洲国产日韩一区高清在线| 久久亚洲私人国产精品| 69xx免费观看视频| 免费看国产成年无码AV片| 最好免费观看韩国+日本| 丁香花在线视频观看免费| 一级毛片**不卡免费播| 亚洲国产av玩弄放荡人妇| 亚洲第一福利视频| 中文亚洲成a人片在线观看| 亚洲一区二区三区偷拍女厕 | 亚洲最大中文字幕| 亚洲无线码一区二区三区| 亚洲va无码专区国产乱码| 亚洲视频免费播放| 国产亚洲精品无码专区| 亚洲精品国产品国语在线| 久久久久亚洲AV无码永不| 亚洲中文无码永久免费| 一区二区三区免费在线视频 | 免费观看亚洲人成网站| 在线看片免费人成视频播| av无码免费一区二区三区|