CHOICE コマンドが (・A・)ナイ! | 踏まれたり蹴られたり...._| ̄|○

踏まれたり蹴られたり...._| ̄|○

「踏んだり蹴ったり」って....あーた、被害者なら「踏まれたり蹴られたり」ってのが正しいんぢゃない??日本語ってばむつかしい...._| ̄|○  (BTW, ついでに、人も指せない「足の親指のトナリの指」を何て呼べばしっくりくるのか、教えてヱライひとっ!!)

(これ以降、覚え書きなのでスルーでよろ。)

CHOICE コマンドが XP には、(・A・)ナイ! ので、コマンドラインでの Yes/No 分岐には
下記ロジック (「“Y” または “y” または “N” または “n”」 以外が入力された場合には Beep 音を発してループ、
再入力を促す処理を実装。) を使用する。


★YesNo.bat 内容
echo off
cls
echo.

rem <「実行します。宜しいですか? (Y/N) : 」 以前の説明が必要であれば echo でここに記述>
rem <共通の事前処理があればここに記述>


:start
set choice=
set /p choice=実行します。宜しいですか? (Y/N) :
if not '%choice%'=='' set choice=%choice:~0,1%
if '%choice%'=='y' goto main
if '%choice%'=='Y' goto main
if '%choice%'=='n' goto end
if '%choice%'=='N' goto end
echo 
goto start

:main
rem <Yes 時に実行する処理をここに記述>
echo 完了しました。
pause

:end
rem <Yes/No 共通の事後処理があればここに記述>
exit

★実行結果キャプチャ
YesNo.bat

★DB2コマンドとの組合せ ―― SELECT 結果を CSV ファイルで出力する。
[test]
├[sql]
│ ├count.sql
│ ├list.sql
│ └RunSql.bat
└test.bat



☆test.bat 内容
db2cmd sql\RunSql.bat
☆sql\RunSql.bat 内容
@echo off
cls
echo.

db2 connect to OurPrivateDB user db2admin using db2admin
db2 -tvf sql\count.sql


:start
set choice=
set /p choice=実行します。宜しいですか? (Y/N) :
if not '%choice%'=='' set choice=%choice:~0,1%
if '%choice%'=='y' goto main
if '%choice%'=='Y' goto main
if '%choice%'=='n' goto end
if '%choice%'=='N' goto end
echo 
goto start

:main
db2 -tvf sql\list.sql > test.log
echo 完了しました。
pause

:end
db2 connect reset
exit
☆sql\count.sql 内容
select count(*)
from R01_Record R01,M01_NameMaster M01
where R01.Code = M01.Code;

☆sql\list.sql 内容
export to test.csv of del
select
R01.Code,
M01.Name
from R01_Record R01,M01_NameMaster M01
where R01.Code = M01.Code
order by R01.Code;


疲れた...._| ̄|○
でも、今日やっとかないと、明日 30 分早退できなくなっちゃうし。

ググって到着された方、お役に立ちそうでしたらお持ち帰り下さいまし....