まず、これは別の問題を回避するための作業ですが、この質問を複雑にしないために、私は元のアプローチには触れません。今、私はバッチファイルを使用しようとしていますバッチファイルの条件付きIF関数
:そのファイル
- 、
- ループがどうかを確認するために、条件付きチェックを行います最後のエントリは、プロセスが正常に完了したことの確認、または完了していないことを示す別のメッセージでした。
- 上記の手順3の結果に基づいて、SSISが結果を解釈できるように、パスには0を、失敗には1を返します。
テキストファイルの名前は、パラメータとしてバッチファイルに入力されます。 IFステートメントを含めると、結果が返されないだけで、すべてが機能しているようです。
誰でも私が間違っていることをアドバイスできますか? - http://ss64.com/nt/if.htmlの案内に従ってみましたが、明らかに成功しませんでした!
@ECHO off
setlocal EnableDelayedExpansion
for /f "delims=" %%x in (%1) do (
set "previous=!last!"
set "last=%%x"
)
IF !last! == "EXPORT completed successfully" ECHO 1 ELSE ECHO 0
最後の行がECHO!last! EXPORTが正常に完了した文字列を正しく返します。私は&と上記のコードを引用符なしで試みましたが、成功しませんでした。
以前はバッチを使用したことがないので、助けてください。
ありがとうございました
'IF!last!'を 'IF"!last! "'に置き換えてください( '=='の前後のbith部分は、 '' "を含めて比較します) ECHO 1'(コマンドインタープリタが 'else'キーワードを確認する場所を知っているように)、それは... – aschipfl