2015-10-24 61 views
-1

我的蝙蝠腳本(new.bat):Cmd的不承認7zip的

7z x –oC:\Users\Toshiba\Downloads\* C:\Users\Toshiba\Downloads\*.zip 

del C:\Users\Toshiba\Downloads\*.zip 

儘管使用7zip的的命令行版本,如果我跑我的批處理腳本,我得到:

7Z X ççoC:\ Users \ Toshiba \ Downloads * C:\ Users \ Toshiba \ Downloads * .zip '7z'不被識別爲內部或外部命令, 可操作的程序或批處理文件。

刪除C:\用戶\東芝\下載* .zip文件 C:\用戶\東芝\下載\ XT1032_RETAIL-EU_4.4.4_KXB21.14-L1.40_36_cid7_CFC_1FF.xml.zip 訪問被拒絕。

Here are my instructions。它要求我下ENVIROMENTAL變量編輯PATH用戶變量,但有沒有一個我創造了它,像這樣:

Variable Name: Path 

Variable Value:C:\WINDOWS;C:\WINDOWS\system32;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\Program Files (x86)\7-Zip\;C:\Users\Toshiba\Documents\new.bat 
+2

您是否重新啓動了命令行界面? Windows本身如何?必須應用PATH更改。 –

+0

包含'.bat'的最後一個'path'條目是錯誤的,絕對刪除它。要暫時刪除它(在當前'cmd'會話中)嘗試'set「path =%path:; C:\ Users \ Toshiba \ Documents \ new.bat =%」'。 – JosefZ

回答

1
  • ΓÇô錯誤消息指,而不是該連字號-您已使用En dash
  • '7z' is not recognized表示它不在PATH變量中定義的文件夾中,或者您已經使用unicode簽名(字節順序標記)保存了批處理文件。
  • Access is denied錯誤可能表明文件在某處打開,或者它可能具有隻讀屬性,您可以在del之前的新行上添加attrib -r C:\Users\Toshiba\Downloads\*.zip來清除該屬性。

解決方法:使用正確的連字符-,在引號指定一個完整路徑,7z(例如,"C:\Program Files\7-Zip\7z.exe")和普通編碼重新保存文件(ANSI在Windows記事本,例如),UTF-不8,而不是UTF-16。

+0

幹得好。然而,''7z'不被識別'與_Unicode_「BOM」無關,這會返回一些jike「'˙ţ7'未被識別」(CP 1250)或「'ÿþ7'未被識別」(CP 1252)或者'■7'不被識別(CP 437)等等。這是'路徑'問題... – JosefZ

+0

啊,是的,但是也許OP沒有完全選擇錯誤信息。無論如何,我會相應地編輯答案。 – wOxxOm

+0

刪除命令工作正常,但現在系統「無法找到指定的路徑」,如下所示: '「C:\ Program Files \ 7-Zip \ 7z.exe」x -oC:\ Users \ Toshiba \ Downloads \ * C:\ Users \ Toshiba \ Downloads \ *。zip 系統找不到指定的路徑.' –