Shell指令碼中獲取SELECT結果值的方法
有時候我們可能會需要在Shell指令碼中執行SELECT語句,並將結果賦值給一個變數,對於這樣的情形,我們可以用以下的方法來達到目的。
如上程式碼,可以將獲取Database Name,執行結果如下:
可以看到SELECT的結果已被正確賦值給Shell的變數。如果SELECT中有多個列的值,也可以用此方法,只是需要將結果進行分拆,如用awk:
執行結果如下:
點選(此處)摺疊或開啟
- #!/bin/ksh
- #
- # Created : 2015.05.25
- # Updated : 2015.05.25
- # Author : Jet Chenxi Zhang
- # Description : Get SELECT result in Shell
- # Variable Definitions #
- ORACLE_SID=audtest
- ORACLE_HOME=/app/oracle/product/database/11.2.0/db_1
- PATH=$PATH:$ORACLE_HOME/bin
- DBNAME=
- # Get Database name by quering v$database #
- DBNMAE=`
-
sqlplus -s /nolog <
- set echo off feedback off heading off underline off;
- conn / as sysdba;
- select name from v\\$database;
- exit;
- EOF`
- echo "Database name: "$DBNMAE
- [oracle@hxddcx02 ~]$ ./query_dbname.sh
- Database name: AUDTEST
點選(此處)摺疊或開啟
- #!/bin/ksh
- #
- # Created : 2015.05.25
- # Updated : 2015.05.25
- # Author : Jet Chenxi Zhang
- # Description : Get SELECT results in Shell
- # Variable Definitions #
- ORACLE_SID=audtest
- ORACLE_HOME=/app/oracle/product/database/11.2.0/db_1
- PATH=$PATH:$ORACLE_HOME/bin
- QUERYRES=
- DBID=
- DBNAME=
- # Get Database name by quering v$database #
- QUERYRES=`
-
sqlplus -s /nolog <
- set echo off feedback off heading off underline off;
- conn / as sysdba;
- select dbid, name from v\\$database;
- exit;
- EOF`
- DBID=`echo $QUERYRES | awk -F' ' '{print $1}'`
- DBNAME=`echo $QUERYRES | awk -F' ' '{print $2}'`
- echo "Database ID: "$DBID
- echo "Database name: "$DBNAME
- [oracle@hxddcx02 ~]$ ./query_dbname2.sh
- Database ID: 811711272
- Database name: AUDTEST
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/13885898/viewspace-1670297/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- shell指令碼獲取函式返回值指令碼函式
- Linux Shell指令碼中獲取本機ip地址方法Linux指令碼
- 獲取UITableViewCell中UITextField的值方法總結UIView
- python執行shell並獲取結果Python
- js獲取select的值JS
- 使用layui框架的select獲取選中的值UI框架
- shell指令碼中如何報錯即刻退出以及如何獲取子shell指令碼的錯誤資訊:set -o errexit指令碼
- shell指令碼獲取時間格式化指令碼
- Linux c程式中獲取shell指令碼輸出(如獲取system命令輸出)LinuxC程式指令碼
- jquery獲取select下拉選中option項的value值jQuery
- jquery 獲取select框選中的值示例一則jQuery
- shell指令碼中main函式中$#獲取不到指令碼傳入引數個數淺析指令碼AI函式
- 原生js如何獲取選中的select下拉項的值JS
- shell指令碼整合json數值輸出從而獲取硬體資訊指令碼JSON
- 獲取選中select下拉選單的value屬性值
- js獲取select選中項的值和文字內容JS
- pbootcms獲取結果頁面的搜尋keyword值和tag值boot
- shell中獲取儲存過程返回值儲存過程
- bash shell指令碼執行方法總結指令碼
- js獲取當前select下拉選單選中項的值JS
- PHP PDO獲取結果集PHP
- shell指令碼總結指令碼
- Shell指令碼中傳送html郵件的方法指令碼HTML
- 請問PbootCMS獲取結果頁面的搜尋keyword值和tag值boot
- 獲取任務的執行結果
- jquery如何獲取select下拉選單選中項的值和文字jQuery
- 【SQL】獲取指定範圍內結果集的實現方法SQL
- jquery實現的獲取選中select下拉選單的值和文字jQuery
- Linux Shell獲取正在執行指令碼的絕對路徑Linux指令碼
- 如何在Shell指令碼中逐行讀取檔案指令碼
- exonerate結果整理,獲取target序列
- Linux shell指令碼的字串擷取Linux指令碼字串
- 關於獲取事件相應的結果事件
- js獲取select下拉選單的value和文字值JS
- 分享一個shell指令碼的坑:grep匹配+wc取值 在指令碼執行後的結果與手動執行結果不一致指令碼
- oracle獲取ddl指令碼Oracle指令碼
- [轉]Shell向Perl指令碼中傳遞變數的方法指令碼變數
- Linux中執行Shell指令碼的方式(三種方法)Linux指令碼