返回列表 发帖

[数值计算] [已解决]批处理命令,比较符号NEQ使用方法,问题出在哪里?

本帖最后由 ygqiang 于 2025-4-16 10:43 编辑

批处理命令,比较符号NEQ使用方法,问题出在哪里?
代码运行后闪退,没效果。
if /i ... NEQ ...
(让 if 比较不区分大小写)
@echo off & setlocal enabledelayedexpansion
set yuan=e:\32g-u\0-0朗科06
set mubi=32g-u\0-0朗科06
set num=0
for %%i in (Z Y X W V U T S R Q P O N M L K J I H G F E D C) do (
    if exist %%i:\ (
    set "panf=%%i"
    if exist !panf!:\!mubi! (
if exist %yuan% (
if /i "!panf!:\%mubi%" NEQ "%yuan%" (
            set num=1
              call :Next
                                    )
         )
                                                   )
            )
    )
cls
if %num%==0 (
cls
echo 没有符合条件的同步盘
pause >nul 2>nul
exit
) else (
cls
echo ++++++++++同步完毕++++++++++++++++++++
pause >nul 2>nul
exit
)
:Next
cls
echo 源目录:%yuan%
echo 同步目录:!panf!:\%mubi%
echo 按回车键开始同步....
pause >nul 2>nul
...
goto :eofCOPY

回复 1# ygqiang

第16行改为 if /i "!panf!:\%mubi%" NEQ "%yuan%" 即可(让 if 比较不区分大小写)...

TOP

本帖最后由 ygqiang 于 2025-4-15 07:03 编辑

回复 2# aloha20200628


谢谢。测试通过

TOP

if num=0 (COPY
明显错误,引起闪退
if exist %yuan% (COPY
假设路径含特殊符号,也会引起闪退,添加双引号解决。
bat小白,请多指教!谢谢!

TOP

bat小白,请多指教!谢谢!

TOP

回复 4# 77七


    谢谢。重新修改了下。
if %num%==0 (
cls
echo 没有符合条件的同步盘
pause >nul 2>nul
exit
) else (
cls
echo ++++++++++同步完毕++++++++++++++++++++
pause >nul 2>nul
exit
) COPY

TOP

返回列表