{"id":8671,"date":"2023-01-07T13:43:08","date_gmt":"2023-01-07T16:43:08","guid":{"rendered":"https:\/\/swiv.com.br\/?p=8671"},"modified":"2026-05-27T20:02:29","modified_gmt":"2026-05-27T19:02:29","slug":"how-to-record-all-shell-command-output","status":"publish","type":"post","link":"https:\/\/swiv.com.br\/index.php\/2023\/01\/07\/how-to-record-all-shell-command-output\/","title":{"rendered":"How to record All Shell Command Output"},"content":{"rendered":"\n<p>Em algumas execu\u00e7\u00f5es mais cr\u00edticas, e que exigem investiga\u00e7\u00e3o\/valida\u00e7\u00e3o posterior, pode ser necess\u00e1rio recorrer ao recurso deste artigo, que \u00e9 executado diretamente no sistema operacional.<\/p>\n\n\n\n<p>Neste Lab, um Oracle Linux, utilizarei o comando &#8220;SCRIPT&#8221; para persistir em arquivo todos os comandos e seus respectivos outputs, tanto para o terminal do S.O quanto para outros utilit\u00e1rios (RMAN, ASMCMD, SQL *PLUS). Para iniciar o processo, basta escrever &#8220;script arquivo&#8221;. Para encerrar, basta pressionar Ctrl+D ou digitar &#8220;end&#8221;:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n&#x5B;oracle@oel7 ~]$ pwd\n\/home\/oracle\n&#x5B;oracle@oel7 ~]$ script SWIV_LOGS.log\nScript started, file is SWIV_LOGS.log\n&#x5B;oracle@oel7 ~]$ ps -ef | grep pmon\ngrid      3512     1  0 13:29 ?        00:00:00 asm_pmon_+ASM\noracle    3632     1  0 13:29 ?        00:00:00 ora_pmon_cortex\noracle    4689  4632  0 13:36 pts\/3    00:00:00 grep --color=auto pmon\n&#x5B;oracle@oel7 ~]$ sqlplus \/ as sysdba\n\nSQL*Plus: Release 19.0.0.0.0 - Production on Sat Jan 7 13:36:55 2023\nVersion 19.3.0.0.0\n\nCopyright (c) 1982, 2019, Oracle.  All rights reserved.\n\n\nConnected to:\nOracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production\nVersion 19.3.0.0.0\n\nSQL&gt; SELECT BANNER FROM V$VERSION;\n\nBANNER\n--------------------------------------------------------------------------------\nOracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production\n\nSQL&gt; exit\nDisconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production\nVersion 19.3.0.0.0\n&#x5B;oracle@oel7 ~]$ su - grid\nPassword:\nLast login: Sat Jan  7 13:30:47 -03 2023 from oel7.localdomain on pts\/1\n&#x5B;grid@oel7 ~]$ asmcmd\nASMCMD&gt; lsdg\nState    Type    Rebal  Sector  Logical_Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name\nMOUNTED  EXTERN  N         512             512   4096  4194304     30716    26964                0           26964              0             N  DG_DATA\/\nMOUNTED  EXTERN  N         512             512   4096  4194304     20476    17696                0           17696              0             N  DG_FRA\/\nMOUNTED  EXTERN  N         512             512   4096  4194304     10236    10136                0           10136              0             N  DG_GRID\/\nMOUNTED  EXTERN  N         512             512   4096  4194304     10236     8668                0            8668              0             N  DG_RECO\/\nASMCMD&gt; exit\n&#x5B;grid@oel7 ~]$ exit\nlogout\n&#x5B;oracle@oel7 ~]$ rman target \/\n\nRecovery Manager: Release 19.0.0.0.0 - Production on Sat Jan 7 13:37:50 2023\nVersion 19.3.0.0.0\n\nCopyright (c) 1982, 2019, Oracle and\/or its affiliates.  All rights reserved.\n\nconnected to target database: CORTEX (DBID=548968087)\n\nRMAN&gt; REPORT SCHEMA;\n\nusing target database control file instead of recovery catalog\nReport of database schema for database with db_unique_name CORTEX\n\nList of Permanent Datafiles\n===========================\nFile Size(MB) Tablespace           RB segs Datafile Name\n---- -------- -------------------- ------- ------------------------\n1    910      SYSTEM               YES     +DG_DATA\/CORTEX\/DATAFILE\/system.256.1113825875\n2    200      TBL_TRAN             NO      +DG_DATA\/CORTEX\/DATAFILE\/tbl_tran.267.1108322511\n3    660      SYSAUX               NO      +DG_DATA\/CORTEX\/DATAFILE\/sysaux.257.1039033519\n4    340      UNDOTBS1             YES     +DG_DATA\/CORTEX\/DATAFILE\/undotbs1.258.1039033555\n5    824      SOE                  NO      +DG_DATA\/CORTEX\/DATAFILE\/soe.266.1065506205\n7    5        USERS                NO      +DG_DATA\/CORTEX\/DATAFILE\/users.259.1039033555\n\nList of Temporary Files\n=======================\nFile Size(MB) Tablespace           Maxsize(MB) Tempfile Name\n---- -------- -------------------- ----------- --------------------\n1    32       TEMP                 32767       +DG_DATA\/CORTEX\/TEMPFILE\/temp.264.1039033669\n\nRMAN&gt; exit\n\n\nRecovery Manager complete.\n&#x5B;oracle@oel7 ~]$ exit\nScript done, file is SWIV_LOGS.log\n&#x5B;oracle@oel7 ~]$\n<\/pre><\/div>\n\n\n<p>Fazendo a leitura do arquivo gerado, podemos ver que tudo foi registado (mesmo o que foi executado com usu\u00e1rio que n\u00e3o tinha inicializado o comando script):<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n&#x5B;oracle@oel7 ~]$ ll\ntotal 24\ndrwxr-xr-x. 2 oracle oinstall     6 May  6  2021 BACKUP\ndrwxr-xr-x. 2 oracle oinstall     6 Dec 31  2020 Desktop\ndrwxr-xr-x. 2 oracle oinstall     6 Dec 31  2020 Documents\ndrwxr-xr-x. 2 oracle oinstall     6 Dec 31  2020 Downloads\n-rw-r--r--. 1 oracle oinstall   194 Sep 20  2021 log.sql\ndrwxr-xr-x. 2 oracle oinstall     6 Dec 31  2020 Music\ndrwxr-xr-x. 2 oracle oinstall     6 Dec 31  2020 Pictures\ndrwxr-xr-x. 2 oracle oinstall     6 Dec 31  2020 Public\n-rw-r--r--. 1 oracle oinstall    35 Jun  9  2021 SS.txt\n-rw-r--r--. 1 oracle oinstall  3721 Jan  7 13:38 SWIV_LOGS.log\ndrwxr-xr-x. 2 oracle oinstall     6 Dec 31  2020 Templates\n-rw-r--r--. 1 oracle oinstall 10240 Jun 29  2022 v\ndrwxr-xr-x. 2 oracle oinstall     6 Dec 31  2020 Videos\n&#x5B;oracle@oel7 ~]$ cat SWIV_LOGS.log\nScript started on Sat 07 Jan 2023 01:36:23 PM -03\n&#x5B;oracle@oel7 ~]$ ps -ef | grep pmon\ngrid      3512     1  0 13:29 ?        00:00:00 asm_pmon_+ASM\noracle    3632     1  0 13:29 ?        00:00:00 ora_pmon_cortex\noracle    4689  4632  0 13:36 pts\/3    00:00:00 grep --color=auto pmon\n&#x5B;oracle@oel7 ~]$ sqlplus \/ as sysdba\n\nSQL*Plus: Release 19.0.0.0.0 - Production on Sat Jan 7 13:36:55 2023\nVersion 19.3.0.0.0\n\nCopyright (c) 1982, 2019, Oracle.  All rights reserved.\n\n\nConnected to:\nOracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production\nVersion 19.3.0.0.0\n\nSQL&gt; SELECT BANNER FROM V$VERSION;\n\nBANNER\n--------------------------------------------------------------------------------\nOracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production\n\nSQL&gt; exit\nDisconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production\nVersion 19.3.0.0.0\n&#x5B;oracle@oel7 ~]$ su - grid\nPassword:\nLast login: Sat Jan  7 13:30:47 -03 2023 from oel7.localdomain on pts\/1\n&#x5B;grid@oel7 ~]$ asmcmd\nASMCMD&gt; lsdg\nState    Type    Rebal  Sector  Logical_Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name\nMOUNTED  EXTERN  N         512             512   4096  4194304     30716    26964                0           26964              0             N  DG_DATA\/\nMOUNTED  EXTERN  N         512             512   4096  4194304     20476    17696                0           17696              0             N  DG_FRA\/\nMOUNTED  EXTERN  N         512             512   4096  4194304     10236    10136                0           10136              0             N  DG_GRID\/\nMOUNTED  EXTERN  N         512             512   4096  4194304     10236     8668                0            8668              0             N  DG_RECO\/\nASMCMD&gt; exit\n&#x5B;grid@oel7 ~]$ exit\nlogout\n&#x5B;oracle@oel7 ~]$ rman target \/\n\nRecovery Manager: Release 19.0.0.0.0 - Production on Sat Jan 7 13:37:50 2023\nVersion 19.3.0.0.0\n\nCopyright (c) 1982, 2019, Oracle and\/or its affiliates.  All rights reserved.\n\nconnected to target database: CORTEX (DBID=548968087)\n\nRMAN&gt; REPORT SCHEMA;\n\nusing target database control file instead of recovery catalog\nReport of database schema for database with db_unique_name CORTEX\n\nList of Permanent Datafiles\n===========================\nFile Size(MB) Tablespace           RB segs Datafile Name\n---- -------- -------------------- ------- ------------------------\n1    910      SYSTEM               YES     +DG_DATA\/CORTEX\/DATAFILE\/system.256.1113825875\n2    200      TBL_TRAN             NO      +DG_DATA\/CORTEX\/DATAFILE\/tbl_tran.267.1108322511\n3    660      SYSAUX               NO      +DG_DATA\/CORTEX\/DATAFILE\/sysaux.257.1039033519\n4    340      UNDOTBS1             YES     +DG_DATA\/CORTEX\/DATAFILE\/undotbs1.258.1039033555\n5    824      SOE                  NO      +DG_DATA\/CORTEX\/DATAFILE\/soe.266.1065506205\n7    5        USERS                NO      +DG_DATA\/CORTEX\/DATAFILE\/users.259.1039033555\n\nList of Temporary Files\n=======================\nFile Size(MB) Tablespace           Maxsize(MB) Tempfile Name\n---- -------- -------------------- ----------- --------------------\n1    32       TEMP                 32767       +DG_DATA\/CORTEX\/TEMPFILE\/temp.264.1039033669\n\nRMAN&gt; exit\n\n\nRecovery Manager complete.\n&#x5B;oracle@oel7 ~]$ exit\n\nScript done on Sat 07 Jan 2023 01:38:24 PM -03\n&#x5B;oracle@oel7 ~]$\n<\/pre><\/div>","protected":false},"excerpt":{"rendered":"<p>Em algumas execu\u00e7\u00f5es mais cr\u00edticas, e que exigem investiga\u00e7\u00e3o\/valida\u00e7\u00e3o posterior, pode ser necess\u00e1rio recorrer ao recurso deste artigo, que \u00e9 executado diretamente no sistema operacional. Neste Lab, um Oracle Linux, utilizarei o comando &#8220;SCRIPT&#8221; para persistir em arquivo todos os comandos e seus respectivos outputs, tanto para o terminal do S.O quanto para outros utilit\u00e1rios [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-8671","post","type-post","status-publish","format-standard","hentry","category-linux"],"_links":{"self":[{"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/posts\/8671","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/comments?post=8671"}],"version-history":[{"count":1,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/posts\/8671\/revisions"}],"predecessor-version":[{"id":9030,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/posts\/8671\/revisions\/9030"}],"wp:attachment":[{"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/media?parent=8671"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/categories?post=8671"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/tags?post=8671"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}