window啟動tomcat的console視窗中文亂碼問題
中文亂碼是因為cmd埠的編碼是GBK,而tomcat啟動視窗的設定時UTF-8。
一、當然可以修改tomcat的 /conf/logging.properties檔案中。將UTF-8修改為GBK。
二、修改cmd視窗的編碼為UTF-8
1、cmd 視窗修改編碼執行命令:chcp 65001
2、修改登錄檔:\HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe
如果通過cmd視窗啟動,會再次開啟cmd視窗,這時視窗還是亂碼。需要按照以下方式修改。
修改檔案 catalina.bat. 增加 /b
原始檔案片段:
if "%TITLE%" == "" set TITLE=Tomcat
set _EXECJAVA=start"%TITLE%" %_RUNJAVA%
修改後片段:
if "%TITLE%" == "" set TITLE=Tomcat
set _EXECJAVA=start /b "%TITLE%" %_RUNJAVA%
Start
啟動單獨的“命令提示符”視窗來執行指定程式或命令。如果在沒有引數的情況下使用,start 將開啟第二個命令提示符視窗。
語法
start ["title"] [/dPath] [/i] [/min] [/max] [{/separate | /shared}] [{/low | /normal | /high | /realtime | /abovenormal | belownormal}] [/wait] [/b] [FileName] [parameters]
引數
"title" 指定在“命令提示符”視窗標題欄中顯示的標題。
/dpatch 指定啟動目錄。
/i 將 Cmd.exe 啟動環境傳送到新的“命令提示符”視窗。
/min 啟動新的最小化視窗。
/max 啟動新的最大化視窗。
/separate 在單獨的記憶體空間啟動 16 位程式。
/shared 在共享的記憶體空間啟動 16 位程式。
/low 以空閒優先順序啟動應用程式。
/normal 以一般優先順序啟動應用程式。
/high 以高優先順序啟動應用程式。
/realtime 以實時優先順序啟動應用程式。
/abovenormal 以超出常規優先順序的方式啟動應用程式。
/belownormal 以低出常規優先順序的方式啟動應用程式。
/wait 啟動應用程式,並等待其結束。
/b 啟動應用程式時不必開啟新的“命令提示符”視窗。除非應用程式啟用 CTRL+C,否則將忽略 CTRL+C 操作。使用 CTRL+BREAK 中斷應用程式。
示例
start /max “”“D:/cmd.exe” 表示以最大化視窗執行程式
start /b “”“D:/cmd.exe” 表示在當前視窗執行程式