今天用批處理指令碼遇到的兩個問題

2021-09-08 22:53:05 字數 488 閱讀 2705

一、設定當前命令列路徑問題:pushd 「%~dp0」

windows下批處理檔案直接開啟時當前命令列路徑就是當前目錄,而右鍵用管理員許可權開啟時命令列預設路徑時system32,此時要獲取當前批處理檔案的路徑需要使用%~dp0,幾個常用的目錄路徑如下:

當前碟符:%~d0

當前路徑:%cd%

當前執行命令列:%0

當前bat檔案路徑:%~dp0

當前bat檔案短路徑:%~sdp0

如果批處理檔案作用是處理當前目錄下的檔案,要相容這兩種開啟方式,可以在之前加上語句:pushd 「%~dp0」,把當前命令列路徑設定到批處理檔案所在的目錄,加上引號時為了相容路徑中有空格的情況。

二、中文顯示亂碼問題

批處理可能因為其中含有中文路徑或檔名顯示為亂碼而執行失敗,這要求在儲存批處理檔案時編碼型別選擇為ascii(記事本預設格式)或gbk格式,改變編碼格式後再執行成功。

最近遇到的兩個問題

最近做專案時,遇到兩個小問題,搜尋了一翻,還真不好找答案,最終還算解決了,於是有寫出來的衝動。希望能給遇到這類問題的同仁們有所幫助。一 如何設定componetart calendar 1 日期控制項的顯示語言 先說下我當時的遇到這個問題時的環境,由於開發是中文作業系統上進行的,所以在本地除錯時,沒...

遇到的兩個編譯問題

最近遇到兩個編譯問題,著實費了一番功夫。我在乙個地方,定義了container of的巨集,卻屢次出現編譯錯誤 巨集定義如下 define container of ptr,type,member 報錯如下 error expected declaration specifiers or befor...

mysql 今天碰到的兩個問題。

今天在 檢查環境的時候。報出 make no targets specified and no makefile found.stop.一連串的幾行錯誤。checking for tgetent in lncurses.no checking for tgetent in lcurses.no ch...