Windowsãƒãƒƒãƒ(MS-DOS)
目次
Windowsãƒãƒƒãƒ
Windows上ã®å‡¦ç†ã‚’自動化ã™ã‚‹ãƒ—ãƒã‚°ãƒ©ãƒ
æ£ç¢ºã«ã¯MS-DOS上ã®å‡¦ç†ã®è‡ªå‹•化
Windowsã®å¤šå½©ãªæ©Ÿèƒ½ã®æ“作ã¯ãƒãƒƒãƒã‚³ãƒžãƒ³ãƒ‰ã§ã¯å®Ÿç¾ã§ããªã„
コマンドプãƒãƒ³ãƒ—トã«ãŠã‘ã‚‹MS-DOSコマンドをã¾ã¨ã‚ã¦è¨˜è¿°ãƒ»ä¿å˜ã—ã¦ãŠã事ã§ã€ã¾ã¨ã‚ã¦å®Ÿè¡Œã§ãã‚‹
Linuxã«ãŠã‘るシェルスクリプト
MS-DOSã€Linuxコマンドã«ã¤ã„ã¦ã¯ã€Œãƒãƒƒãƒã‚³ãƒžãƒ³ãƒ‰(Linux/DOS/PowerShell)ã€å‚ç…§
コマンド
コマンド | 機能 |
---|---|
pause | ãƒãƒƒãƒä¸æ– |
exit | コマンドプãƒãƒ³ãƒ—ト終了 |
@~ | ç”»é¢éžè¡¨ç¤º |
timeout | 待機 |
ãƒãƒƒãƒä¸æ–
pause
コマンドプãƒãƒ³ãƒ—ト終了
exit
ç”»é¢éžè¡¨ç¤º
@~
@echoã€@if ~ç‰
TIMEOUT /T 待機時間(秒)
TIMEOUT /T 60
TIMEOUT /T -1 ※無制é™
コマンドパラメータ
パラメータ | 機能 |
---|---|
/E | ファイルãŒå˜åœ¨ã—ãªãã¦ã‚‚ディレクトリã”ã¨ã‚³ãƒ”ー |
/Y | åŒåã®ãƒ•ァイルãŒå˜åœ¨ã™ã‚‹å ´åˆã€è‡ªå‹•ã§ä¸Šæ›¸ã |
/D | コピー先ã«åŒåã®ãƒ•ァイルãŒå˜åœ¨ã™ã‚‹å ´åˆã¯æ›´æ–°æ—¥ãŒæ–°ã—ã„ファイルã®ã¿ã‚³ãƒ”ー |
/q | 確èªãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã—ãªã„ |
/p | 確èªãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã™ã‚‹ |
組込変数
変数 | 機能 |
---|---|
%~dp0 | 実行ファイルãŒç½®ã‹ã‚Œã¦ã„るカレントディレクトリ |
%0 | 実行ファイルパス |
%~n0 | ファイルå |
%~x0 | æ‹¡å¼µå |
起動パラメータ
å—å–
> test.bat 5 ABC ""
æ–‡å—列ã¯"ã§å›²ã¾ãªã„
※test.bat
set prm1 = %1
set prm2 = %2
set prm3 = %3
SQL*Plus実行時
> test.bat 5 ABC ""
※test.bat
sqlplus (æŽ¥ç¶šæƒ…å ±) @C:\test.sql %1 %2 %3
起動パラメータをãã®ã¾ã¾æ¸¡ã™
エラーãƒãƒ³ãƒ‰ãƒªãƒ³ã‚°
%errorlevel%
ms-dosæ“作ã®çµæžœãŒè‡ªå‹•çš„ã«æ ¼ç´ã•れる組込ã¿å¤‰æ•°
明示的ã«å€¤ã‚’セットã™ã‚‹äº‹ã‚‚å¯èƒ½
parent.batã‹ã‚‰child.batを呼ã³å‡ºã™å ´åˆ
※parent.bat
call c:\child.bat
child.batã§ã®çµ‚äº†çµæžœã«å¿œã˜ã¦åˆ†å²
if %errorlevel% neq 0 goto NG
:OK
@echo OK
exit
*NG
@echo NG
exit
※child.bat
変数をクリア
set errorlevel =
~
errorlevelã«æ£å¸¸(0)をセットã—ã¦çµ‚了
exit /b 0
~
errorlevelã«ç•°å¸¸(1)をセットã—ã¦çµ‚了
exit /b 1
SQL*Plusã®æˆ»ã‚Šå€¤
SQL*Plusを実行
æ›´ã«PL/SQLを記述ã—ãŸå¤–部スクリプトを実行ã™ã‚‹å ´åˆ
> SQLPLUS (æŽ¥ç¶šæƒ…å ±) @(スクリプトファイルå)
if %errorlevel% neq 0 goto NG
「Oracle SQL*Plus使用方法ã€å‚ç…§
PSQLã®æˆ»ã‚Šå€¤
psql -d ~ -h ~ -p ~ -U ~ -f ~.sql
if %errorlevel% neq 0 (
  ~
) else (
  ~
)
「SQL DML:制御文/è¨å®šã€å‚ç…§