2009-06-16 31 views
4

私はWindows 2003システム上にあり、WebSphere Application Serverでのプロファイルの削除と作成をスクリプト化する必要があります。これで、manageprofiles.batを2回、既存のプロファイルを削除するために1回、新しいプロファイルを作成するために1回呼び出す必要があります。私のバッチファイルで呼び出されたバットファイルをどのようにして呼び出すことができますか?

、私は次のようしている:

cd "C:\Program Files\IBM\WebSphere\AppServer\bin" 
manageprofiles.bat -delete -profileName AppSrv01 
rmdir /s /q ..\profiles\AppSrv01 
manageprofiles.bat -create -templatePath ..\profileTemplates\default -profileName AppSrv01 -profilePath ..\profiles\AppSrv01 

manageprofiles.batファイルはで終わる:

set RC=%ERRORLEVEL% 
@endlocal & exit /b %RC% 

の2行目のプロファイルの削除中にエラーがあると私(あまりにも頻繁に起こる)バッチファイルでは、manageprofiles.batはエラーメッセージを吐き出し、バッチファイルを終了させます。私は次のコマンドで残りのプロファイルを削除するだけなので、これが起きないようにしたい。終了のためのドキュメントを読むと、manageprofiles.batのexitコマンドの/ bは、私のbatファイルに影響を与えずにmanageprofiles.batを終了させるはずです。

私の変更が道路の更新によって元に戻ってスクリプトをもう一度壊す可能性があるので、manageprofiles.batファイルには何も触れたくありません。これを修正するためにバッチファイルで何かできることはありますか?

答えて

8

「manageprofiles.bat」と「call manageprofiles.bat」の両方の出現を変更します。 "呼び出し"がなければ、実行はmanageprofiles.batファイルに転送されますが、戻りません。

+0

私はそれらをmanageprofiles.batの呼び出しに変えると、スクリプトはコマンドをエコーし​​なくなり、効果的に@echoをオフにします。各呼び出しの後に@エコーをオンにすることなく、これを防ぐ方法がありますか? –

+0

私はmanageprofiles.batの上に@echoがあると仮定していますか?もしそうなら、manageprofiles.batの最後に@echoを追加する以外の方法はないと思います。 –

+0

Aha!したがって、manageprofiles.batの上部に@echoがあります。私はちょうどそれの周りに自分の道をハックする必要がありますね。ありがとう。 –

4

は、任意の違いを確認

call manageprofiles.bat 

を使用していますか?

+0

コマンド拡張機能も有効になっているかどうかを確認してください。 –

関連する問題