Oracle
使用 SQL*Plus 創建動態文件夾
我需要在 Linux 中創建帶有來自 SQL*Plus 的日期戳的目錄。是否有可以在 *.sql 文件中執行的命令來創建具有目前日期的目錄?
您要查找的 SQL*Plus 命令是
host
. 它允許你執行 Linux shell 命令,所以host mkdir $(date +%F);
根據需要調整日期格式(
man date
將幫助您)。
正如我已經說過的,您正在嘗試解決錯誤的問題。所以在這裡,使用腳本:
[oracle@o71 ~]$ ls -l total 4 -rwxr-xr-x. 1 oracle oinstall 129 Feb 3 12:35 script.sh [oracle@o71 ~]$ cat script.sh export SPOOLDIR=$(date +%F) mkdir $SPOOLDIR sqlplus -S / as sysdba <<EOF spool $SPOOLDIR/output.txt select * from dual; exit EOF [oracle@o71 ~]$ ./script.sh D - X [oracle@o71 ~]$ ls -l total 4 drwxr-xr-x. 2 oracle oinstall 24 Feb 3 12:35 2019-02-03 -rwxr-xr-x. 1 oracle oinstall 129 Feb 3 12:35 script.sh [oracle@o71 ~]$ ls -l 2019-02-03/ total 4 -rw-r--r--. 1 oracle oinstall 245 Feb 3 12:35 output.txt [oracle@o71 ~]$ cat 2019-02-03/output.txt D - X [oracle@o71 ~]$