見出し画像

バッチわからん

.bat ifを使った比較

set test1=20220318150510
set test2=20220318152028

if %test1% equ %test2% (
	echo same
) else (
	echo not same
)
::結果
same

.bat powershellを使った比較

set test1=20220318150510
set test2=20220318152028

powershell %test1% -eq %test2%
::結果
False

????????????????????????












576) Re:if文での数値比較桁数について じゃく 2002/08/29(木) 19:26


とおるさんこんにちは。
>Diskの空き容量を閾値と比較し警告を出すbatを作成しています。
>dirの結果
>29 個のディレクトリ 3,152,592,896 バイトの空き領域
>から3152592896 を抜き出しif文で比較してもきちんとした
>結果が得られません。
>テストしてみると9桁まではOKで10桁からNGのようです。

3152592896を抜き出しと書いてあるところから、WindowsNT/2000系だと仮定して回答します。
当方 XPで実験しましたが10桁ではうまく比較できないことが
ありますね。

しかし、ディスクの空き容量チェックならば、文字列操作で、
下3桁をのぞいて数値化すれば、KB単位でのチェック、
下6桁をのぞけばMB単位のチェックができますが、
それではだめなのでしょうか?
if文で比較可能な数値桁数を越える場合の処理 - DOSプロンプト活用相談室LOG

…どうやらifでの比較には文字数制限があるようで?

この記事が気に入ったらサポートをしてみませんか?