
[已解決]有中文的帶echo的BAT代碼行不能正常執行
點擊這個bat時,cmd的窗口一閃而過nclick="copycode($('code0'));">復制代碼
- @echo off
- set num=0
- setlocal enabledelayedexpansion
- for /f %%i in ('dir /a-d /b *.lnk') do (
- set /a num+=1
- echo num 當前的值是 !num!
- )
- echo 當前目錄下共有 %num% 個lnk文件
- dir /a-d /b *.txt|findstr test>nul&&(
- echo 存在含有 test 字符串的文本本件
- )||echo 不存在含有 test 字符串的文本文件
- if exist test.ini (
- echo 存在 test.ini 文件
- ) else echo 不存在 test.ini 文件
- pause
把帶中文的每一行都空出一行,cmd顯示正常,結果:nclick="copycode($('code1'));">復制代碼
- @echo off
- set num=0
- setlocal enabledelayedexpansion
- for /f %%i in ('dir /a-d /b *.lnk') do (
- set /a num+=1
- echo num 當前的值是 !num!
- )
- echo 當前目錄下共有 %num% 個lnk文件
- dir /a-d /b *.txt|findstr test>nul&&(
- echo 存在含有 test 字符串的文本本件
- )||echo 不存在含有 test 字符串的文本文件
- if exist test.ini (
- echo 存在 test.ini 文件
- ) else echo 不存在 test.ini 文件
- pause
num 當前的值是 1num 當前的值是 2num 當前的值是 3num 當前的值是 4num 當前的值是 5num 當前的值是 6當前目錄下共有 6 個lnk文件存在含有 test 字符串的文本本件不存在 test.ini 文件請按任意鍵繼續. . .如果第一次有中文的代碼行不空一行的話,
cmd仍正常顯示,但顯示結果如下:nclick="copycode($('code2'));">復制代碼
- @echo off
- set num=0
- setlocal enabledelayedexpansion
- for /f %%i in ('dir /a-d /b *.lnk') do (
- set /a num+=1
- echo num 當前的值是 !num!
- )
- echo 當前目錄下共有 %num% 個lnk文件
- dir /a-d /b *.txt|findstr test>nul&&(
- echo 存在含有 test 字符串的文本本件
- )||echo 不存在含有 test 字符串的文本文件
- if exist test.ini (
- echo 存在 test.ini 文件
- ) else echo 不存在 test.ini 文件
- pause
'cho' 不是內部或外部命令,也不是可運行的程序或批處理文件。'cho' 不是內部或外部命令,也不是可運行的程序或批處理文件。'cho' 不是內部或外部命令,也不是可運行的程序或批處理文件。'cho' 不是內部或外部命令,也不是可運行的程序或批處理文件。'cho' 不是內部或外部命令,也不是可運行的程序或批處理文件。'cho' 不是內部或外部命令,也不是可運行的程序或批處理文件。當前目錄下共有 6 個lnk文件存在含有 test 字符串的文本本件不存在 test.ini 文件請按任意鍵繼續. . .總之就是有中文的帶echo的代碼行不能正常執行,在會出現“'cho' 不是內部或外部命令,也不是可運行的程序或批處理文件。”的提示求好心人幫助解決啊!!!

