scriptコマンドメモ

scriptコマンドについてメモ

LANG環境変数は下記

[oracle@oracledev ~]$ printenv | grep LANG
LANG=ja_JP.UTF-8

scriptコマンドで作業ログを取る際に制御コードが入ってしまうという話を聞いて 試してみた。

script を実行して、一連の作業を記録した際の標準出力(ターミナルの出力を手動でコピーしてテキストに貼り付けたもの)

[oracle@oracledev ~]$ script operation.log
スクリプトを開始しました、ファイルは operation.log です
[oracle@oracledev ~]$ ls -l
合計 92
-rw-r-----. 1 oracle oinstall 26593 11月  3 14:06 2019 dbca.rsp
drwxrwxrwx. 5 oracle oinstall  4096  5月  9 15:51 2021 examples
-rw-r--r--. 1 oracle oinstall     0  3月 13 15:56 2022 operation.log
-rwxr-xr-x. 1 oracle oinstall   281  6月  2 21:02 2021 ora12201.env
drwxr-xr-x. 4 oracle oinstall  4096  6月 27 16:52 2021 project
drwxr-xr-x. 3 oracle oinstall  4096 11月 28 15:20 2021 work
drwxr-xr-x. 2 oracle oinstall  4096 11月  2 22:21 2019 ダウンロード
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 テンプレート
drwxr-xr-x. 2 oracle oinstall  4096 11月  3 13:39 2019 デスクトップ
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 ドキュメント
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 ビデオ
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 音楽
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 画像
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 公開
[oracle@oracledev ~]$ cat ora12201.env 
export ORACLE_SID=orcl
export ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH
export NLS_LANG=Japanese_Japan.AL32UTF8
#export NLS_LANG=American_America.US8PC437
export ORACLE_UNQNAME=orcl
export JAVA_HOME=$ORACLE_HOME/jdk
[oracle@oracledev ~]$ 
[oracle@oracledev ~]$ cd /u01/app/
[oracle@oracledev app]$ ll
合計 8
drwxrwx---.  5 oracle oinstall 4096 11月  2 22:55 2019 oraInventory
drwxrwxr-x. 10 oracle oinstall 4096 11月  3 14:06 2019 oracle
[oracle@oracledev app]$ cd oracle/
[oracle@oracledev oracle]$ ll
合計 32
drwxr-x---.  3 oracle oinstall 4096 11月  3 14:06 2019 admin
drwxr-x---.  3 oracle oinstall 4096 11月  3 14:24 2019 audit
drwxr-x---.  5 oracle oinstall 4096 11月  3 15:07 2019 cfgtoollogs
drwxr-xr-x.  2 oracle oinstall 4096 11月  2 23:50 2019 checkpoints
drwxrwxr-x. 21 oracle oinstall 4096 11月  2 22:55 2019 diag
drwxr-x---.  3 oracle oinstall 4096 11月  3 14:06 2019 fast_recovery_area
drwxr-x---.  3 oracle oinstall 4096 11月  3 14:06 2019 oradata
drwxr-xr-x.  3 oracle oinstall 4096 11月  2 22:51 2019 product
[oracle@oracledev oracle]$ cd diag/rdbms/orcl/orcl/trace/
[oracle@oracledev trace]$ ls -l alert_orcl.log 
-rw-r-----. 1 oracle oinstall 581609  3月 13 15:55 2022 alert_orcl.log
[oracle@oracledev trace]$ tail -n 20 alert_orcl.log 
Closing scheduler window
Closing Resource Manager plan via scheduler window
Clearing Resource Manager plan via parameter
2021-12-29T07:00:13.653893+09:00
Thread 1 advanced to log sequence 47 (LGWR switch)
  Current log# 2 seq# 47 mem# 0: /u01/app/oracle/oradata/orcl/redo02.log
2021-12-29T13:46:47.889999+09:00
Warning: VKTM detected a forward time drift. 
Time drifts can result in unexpected behavior such as time-outs. 
Please see the VKTM trace file for more details:
/u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_vktm_3111.trc
2022-03-13T15:55:01.398383+09:00
Warning: VKTM detected a forward time drift. 
Time drifts can result in unexpected behavior such as time-outs. 
Please see the VKTM trace file for more details:
/u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_vktm_3111.trc
2022-03-13T15:55:32.468230+09:00
TABLE SYS.WRP$_REPORTS: ADDED INTERVAL PARTITION SYS_P1046 (4455) VALUES LESS THAN (TO_DATE(' 2022-03-14 01:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
TABLE SYS.WRP$_REPORTS_DETAILS: ADDED INTERVAL PARTITION SYS_P1047 (4455) VALUES LESS THAN (TO_DATE(' 2022-03-14 01:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
TABLE SYS.WRP$_REPORTS_TIME_BANDS: ADDED INTERVAL PARTITION SYS_P1050 (4454) VALUES LESS THAN (TO_DATE(' 2022-03-13 01:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
[oracle@oracledev trace]$ 
[oracle@oracledev trace]$ 
[oracle@oracledev trace]$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_oracledev-lv_root
                       26G   21G  4.6G  82% /
tmpfs                 2.0G   72K  2.0G   1% /dev/shm
/dev/sda1             477M   79M  370M  18% /boot
01_shared             238G  186G   52G  79% /media/sf_01_shared
[oracle@oracledev trace]$ exit
exit
スクリプトを終了しました、ファイルは operation.log です

catで作業ログoperation.logを表示

[oracle@oracledev ~]$ pwd
/home/oracle
[oracle@oracledev ~]$ ls -l
合計 100
-rw-r-----. 1 oracle oinstall 26593 11月  3 14:06 2019 dbca.rsp
drwxrwxrwx. 5 oracle oinstall  4096  5月  9 15:51 2021 examples
-rwxr-xr-x. 1 oracle oinstall 15364 10月 14 22:56 2019 hacker.png
-rw-r--r--. 1 oracle oinstall  5421  3月 13 15:58 2022 operation.log
-rwxr-xr-x. 1 oracle oinstall   281  6月  2 21:02 2021 ora12201.env
drwxr-xr-x. 4 oracle oinstall  4096  6月 27 16:52 2021 project
drwxr-xr-x. 3 oracle oinstall  4096 11月 28 15:20 2021 work
drwxr-xr-x. 2 oracle oinstall  4096 11月  2 22:21 2019 ダウンロード
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 テンプレート
drwxr-xr-x. 2 oracle oinstall  4096 11月  3 13:39 2019 デスクトップ
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 ドキュメント
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 ビデオ
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 音楽
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 画像
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 公開
[oracle@oracledev ~]$ cat operation.log
スクリプトは 2022年03月13日 15時56分24秒
 に開始しました[oracle@oracledev ~]$ ls -l
合計 92
-rw-r-----. 1 oracle oinstall 26593 11月  3 14:06 2019 dbca.rsp
drwxrwxrwx. 5 oracle oinstall  4096  5月  9 15:51 2021 examples
-rwxr-xr-x. 1 oracle oinstall 15364 10月 14 22:56 2019 hacker.png
-rw-r--r--. 1 oracle oinstall     0  3月 13 15:56 2022 operation.log
-rwxr-xr-x. 1 oracle oinstall   281  6月  2 21:02 2021 ora12201.env
drwxr-xr-x. 4 oracle oinstall  4096  6月 27 16:52 2021 project
drwxr-xr-x. 3 oracle oinstall  4096 11月 28 15:20 2021 work
drwxr-xr-x. 2 oracle oinstall  4096 11月  2 22:21 2019 ダウンロード
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 テンプレート
drwxr-xr-x. 2 oracle oinstall  4096 11月  3 13:39 2019 デスクトップ
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 ドキュメント
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 ビデオ
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 音楽
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 画像
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 公開
[oracle@oracledev ~]$ cat ora12201.env 
export ORACLE_SID=orcl
export ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH
export NLS_LANG=Japanese_Japan.AL32UTF8
#export NLS_LANG=American_America.US8PC437
export ORACLE_UNQNAME=orcl
export JAVA_HOME=$ORACLE_HOME/jdk
[oracle@oracledev ~]$ 
[oracle@oracledev ~]$ cd /u01/app/
[oracle@oracledev app]$ ll
合計 8
drwxrwx---.  5 oracle oinstall 4096 11月  2 22:55 2019 oraInventory
drwxrwxr-x. 10 oracle oinstall 4096 11月  3 14:06 2019 oracle
[oracle@oracledev app]$ cd oracle/
[oracle@oracledev oracle]$ ll
合計 32
drwxr-x---.  3 oracle oinstall 4096 11月  3 14:06 2019 admin
drwxr-x---.  3 oracle oinstall 4096 11月  3 14:24 2019 audit
drwxr-x---.  5 oracle oinstall 4096 11月  3 15:07 2019 cfgtoollogs
drwxr-xr-x.  2 oracle oinstall 4096 11月  2 23:50 2019 checkpoints
drwxrwxr-x. 21 oracle oinstall 4096 11月  2 22:55 2019 diag
drwxr-x---.  3 oracle oinstall 4096 11月  3 14:06 2019 fast_recovery_area
drwxr-x---.  3 oracle oinstall 4096 11月  3 14:06 2019 oradata
drwxr-xr-x.  3 oracle oinstall 4096 11月  2 22:51 2019 product
[oracle@oracledev oracle]$ cd diag/rdbms/orcl/orcl/trace/
[oracle@oracledev trace]$ ls -l alert_orcl.log 
-rw-r-----. 1 oracle oinstall 581609  3月 13 15:55 2022 alert_orcl.log
[oracle@oracledev trace]$ tail -n 20 alert_orcl.log 
Closing scheduler window
Closing Resource Manager plan via scheduler window
Clearing Resource Manager plan via parameter
2021-12-29T07:00:13.653893+09:00
Thread 1 advanced to log sequence 47 (LGWR switch)
  Current log# 2 seq# 47 mem# 0: /u01/app/oracle/oradata/orcl/redo02.log
2021-12-29T13:46:47.889999+09:00
Warning: VKTM detected a forward time drift. 
Time drifts can result in unexpected behavior such as time-outs. 
Please see the VKTM trace file for more details:
/u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_vktm_3111.trc
2022-03-13T15:55:01.398383+09:00
Warning: VKTM detected a forward time drift. 
Time drifts can result in unexpected behavior such as time-outs. 
Please see the VKTM trace file for more details:
/u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_vktm_3111.trc
2022-03-13T15:55:32.468230+09:00
TABLE SYS.WRP$_REPORTS: ADDED INTERVAL PARTITION SYS_P1046 (4455) VALUES LESS THAN (TO_DATE(' 2022-03-14 01:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
TABLE SYS.WRP$_REPORTS_DETAILS: ADDED INTERVAL PARTITION SYS_P1047 (4455) VALUES LESS THAN (TO_DATE(' 2022-03-14 01:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
TABLE SYS.WRP$_REPORTS_TIME_BANDS: ADDED INTERVAL PARTITION SYS_P1050 (4454) VALUES LESS THAN (TO_DATE(' 2022-03-13 01:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
[oracle@oracledev trace]$ 
[oracle@oracledev trace]$ 
[oracle@oracledev trace]$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_oracledev-lv_root
                       26G   21G  4.6G  82% /
tmpfs                 2.0G   72K  2.0G   1% /dev/shm
/dev/sda1             477M   79M  370M  18% /boot
01_shared             238G  186G   52G  79% /media/sf_01_shared
[oracle@oracledev trace]$ exit
exit

スクリプトは 2022年03月13日 15時58分00秒
 に終了しました[oracle@oracledev ~]$ 

lessでoperation.log を表示

スクリプトは 2022年03月13日 15時56分24秒
 に開始しましたESC]0;oracle@oracledev:~^GESC[?1034h[oracle@oracledev ~]$ ls -l
合計 92
-rw-r-----. 1 oracle oinstall 26593 11月  3 14:06 2019 dbca.rsp
drwxrwxrwx. 5 oracle oinstall  4096  5月  9 15:51 2021 ESC[0mESC[34;42mexamplesESC[0m
-rwxr-xr-x. 1 oracle oinstall 15364 10月 14 22:56 2019 ESC[01;32mhacker.pngESC[0m
-rw-r--r--. 1 oracle oinstall     0  3月 13 15:56 2022 operation.log
-rwxr-xr-x. 1 oracle oinstall   281  6月  2 21:02 2021 ESC[01;32mora12201.envESC[0m
drwxr-xr-x. 4 oracle oinstall  4096  6月 27 16:52 2021 ESC[01;34mprojectESC[0m
drwxr-xr-x. 3 oracle oinstall  4096 11月 28 15:20 2021 ESC[01;34mworkESC[0m
drwxr-xr-x. 2 oracle oinstall  4096 11月  2 22:21 2019 ESC[01;34mダウンロードESC[0m
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 ESC[01;34mテンプレートESC[0m
drwxr-xr-x. 2 oracle oinstall  4096 11月  3 13:39 2019 ESC[01;34mデスクトップESC[0m
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 ESC[01;34mドキュメントESC[0m
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 ESC[01;34mビデオESC[0m
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 ESC[01;34m音楽ESC[0m
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 ESC[01;34m画像ESC[0m
drwxr-xr-x. 2 oracle oinstall  4096 10月 14 22:47 2019 ESC[01;34m公開ESC[0m
ESC[mESC]0;oracle@oracledev:~^G[oracle@oracledev ~]$ cat ora12201.env 
export ORACLE_SID=orcl
export ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH
export NLS_LANG=Japanese_Japan.AL32UTF8
#export NLS_LANG=American_America.US8PC437
export ORACLE_UNQNAME=orcl
export JAVA_HOME=$ORACLE_HOME/jdk
ESC]0;oracle@oracledev:~^G[oracle@oracledev ~]$ 
ESC]0;oracle@oracledev:~^G[oracle@oracledev ~]$ cd ESC[K/u01/app/ora^G^HESC[ESC[ESC[K
ESC]0;oracle@oracledev:/u01/app^G[oracle@oracledev app]$ ll
合計 8
drwxrwx---.  5 oracle oinstall 4096 11月  2 22:55 2019 ESC[0mESC[01;34moraInventoryESC[0m
drwxrwxr-x. 10 oracle oinstall 4096 11月  3 14:06 2019 ESC[01;34moracleESC[0m
ESC[mESC]0;oracle@oracledev:/u01/app^G[oracle@oracledev app]$ cd ora^Gcle/
ESC]0;oracle@oracledev:/u01/app/oracle^G[oracle@oracledev oracle]$ ll
合計 32
drwxr-x---.  3 oracle oinstall 4096 11月  3 14:06 2019 ESC[0mESC[01;34madminESC[0m
drwxr-x---.  3 oracle oinstall 4096 11月  3 14:24 2019 ESC[01;34mauditESC[0m
drwxr-x---.  5 oracle oinstall 4096 11月  3 15:07 2019 ESC[01;34mcfgtoollogsESC[0m
drwxr-xr-x.  2 oracle oinstall 4096 11月  2 23:50 2019 ESC[01;34mcheckpointsESC[0m
drwxrwxr-x. 21 oracle oinstall 4096 11月  2 22:55 2019 ESC[01;34mdiagESC[0m
drwxr-x---.  3 oracle oinstall 4096 11月  3 14:06 2019 ESC[01;34mfast_recovery_areaESC[0m
drwxr-x---.  3 oracle oinstall 4096 11月  3 14:06 2019 ESC[01;34moradataESC[0m
drwxr-xr-x.  3 oracle oinstall 4096 11月  2 22:51 2019 ESC[01;34mproductESC[0m
ESC[mESC]0;oracle@oracledev:/u01/app/oracle^G[oracle@oracledev oracle]$ cd diag/rdbms/tra^G^HESC[ESC[ESC[K12^G^HESC[ESC[Korcl/orcl/12^G^HESC[ESC[Ktrace/
ESC]0;oracle@oracledev:/u01/app/oracle/diag/rdbms/orcl/orcl/trace^G[oracle@oracledev trace]$ ls -l alert_orcl.log 
-rw-r-----. 1 oracle oinstall 581609  3月 13 15:55 2022 alert_orcl.log
ESC]0;oracle@oracledev:/u01/app/oracle/diag/rdbms/orcl/orcl/trace^G[oracle@oracledev trace]$ tail -3ESC[ESC[Kn ESC[K20 alert_orcl.log 
Closing scheduler window
Closing Resource Manager plan via scheduler window
Clearing Resource Manager plan via parameter
2021-12-29T07:00:13.653893+09:00
Thread 1 advanced to log sequence 47 (LGWR switch)
  Current log# 2 seq# 47 mem# 0: /u01/app/oracle/oradata/orcl/redo02.log
2021-12-29T13:46:47.889999+09:00
Warning: VKTM detected a forward time drift. 
Time drifts can result in unexpected behavior such as time-outs. 
Please see the VKTM trace file for more details:
/u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_vktm_3111.trc
2022-03-13T15:55:01.398383+09:00
Warning: VKTM detected a forward time drift. 
Time drifts can result in unexpected behavior such as time-outs. 
Please see the VKTM trace file for more details:
/u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_vktm_3111.trc
2022-03-13T15:55:32.468230+09:00
TABLE SYS.WRP$_REPORTS: ADDED INTERVAL PARTITION SYS_P1046 (4455) VALUES LESS THAN (TO_DATE(' 2022-03-14 01:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
TABLE SYS.WRP$_REPORTS_DETAILS: ADDED INTERVAL PARTITION SYS_P1047 (4455) VALUES LESS THAN (TO_DATE(' 2022-03-14 01:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
TABLE SYS.WRP$_REPORTS_TIME_BANDS: ADDED INTERVAL PARTITION SYS_P1050 (4454) VALUES LESS THAN (TO_DATE(' 2022-03-13 01:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
ESC]0;oracle@oracledev:/u01/app/oracle/diag/rdbms/orcl/orcl/trace^G[oracle@oracledev trace]$ 
ESC]0;oracle@oracledev:/u01/app/oracle/diag/rdbms/orcl/orcl/trace^G[oracle@oracledev trace]$ 
ESC]0;oracle@oracledev:/u01/app/oracle/diag/rdbms/orcl/orcl/trace^G[oracle@oracledev trace]$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_oracledev-lv_root
                       26G   21G  4.6G  82% /
tmpfs                 2.0G   72K  2.0G   1% /dev/shm
/dev/sda1             477M   79M  370M  18% /boot
01_shared             238G  186G   52G  79% /media/sf_01_shared
ESC]0;oracle@oracledev:/u01/app/oracle/diag/rdbms/orcl/orcl/trace^G[oracle@oracledev trace]$ exit
exit

スクリプトは 2022年03月13日 15時58分00秒
 に終了しました
(END) 

確認結果

cat だと制御コードは表示されないが、lessでは制御コードが表示される。 (LANGの設定で変化しそう)