摘要:已到達網絡命令限制。發生意外的網絡錯誤。遠程服務器已暫停,或正在啟動過程中。本地設備名已在使用中。此信號燈的前一個所有權已結束。系統試圖解除未合并驅動器的。指定的擴展屬性名無效。僅完成部分的或請求。操作鎖定請求被拒絕。
WindowsError: [Error 5]
repo sync之后,突然停在了這個地方
Traceback (most recent call last): File "E:LocalProjectOreo.repo epo/main.py", line 538, in_Main(sys.argv[1:]) File "E:LocalProjectOreo.repo epo/main.py", line 512, in _Main result = repo._Run(argv) or 0 File "E:LocalProjectOreo.repo epo/main.py", line 185, in _Run result = cmd.Execute(copts, cargs) File "E:LocalProjectOreo.repo eposubcmdssync.py", line 823, in Execute project.Sync_LocalHalf(syncbuf, force_sync=opt.force_sync) File "E:LocalProjectOreo.repo epoproject.py", line 1377, in Sync_LocalHal self._CopyAndLinkFiles() File "E:LocalProjectOreo.repo epoproject.py", line 1294, in _CopyAndLinkF linkfile._Link() File "E:LocalProjectOreo.repo epoproject.py", line 299, in _Link self.__linkIt(self.src_rel_to_dest, self.abs_dest) File "E:LocalProjectOreo.repo epoproject.py", line 279, in __linkIt os.remove(absDest) WindowsError: [Error 5] : u"E:LocalProjectOreouild/core"
看到這個報錯我就有點尷尬了。因為這個repo的腳本是由大神改的。完全不懂腳本啊。
修改后的腳本:
def __linkIt(self, relSrc, absDest): # link file if it does not exist or is out of date # if not os.path.islink(absDest) or (os.readlink(absDest) != relSrc): if not portable.os_path_islink(absDest) or (portable.os_path_realpath(absDest) != relSrc): try: # remove existing file first, since it might be read-only if os.path.lexists(absDest): os.remove(absDest) else: dest_dir = os.path.dirname(absDest) if not os.path.isdir(dest_dir): os.makedirs(dest_dir) # os.symlink(relSrc, absDest) portable.os_symlink(relSrc, absDest) except IOError: _error("Cannot link file %s to %s", relSrc, absDest)
上網查了下,網上的解決方案基本就兩種:修改權限和去掉只讀屬性。
那么是刪除權限不夠?用管理員
import os
import stat
os.chmod( filename, stat.S_IWRITE )
試了下并不管用。看了下python的sdk文檔,發現原因很簡單,os.remove(path)是用來刪除文件的。但是報錯的地方是刪除文件夾的快捷方式。看來文件夾的快捷方式不屬于文件。刪除文件夾要用os.removedirs(path),那做個簡單的判斷就好了。
def __linkIt(self, relSrc, absDest): # link file if it does not exist or is out of date # if not os.path.islink(absDest) or (os.readlink(absDest) != relSrc): if not portable.os_path_islink(absDest) or (portable.os_path_realpath(absDest) != relSrc): try: # remove existing file first, since it might be read-only if os.path.lexists(absDest): if os.path.isfile(absDest): os.remove(absDest) else: os.removedirs(absDest) else: dest_dir = os.path.dirname(absDest) if not os.path.isdir(dest_dir): os.makedirs(dest_dir) # os.symlink(relSrc, absDest) portable.os_symlink(relSrc, absDest) except IOError: _error("Cannot link file %s to %s", relSrc, absDest)
附上 windows error錯誤代碼:
0操作成功完成。
1功能錯誤。
2系統找不到指定的文件。
3系統找不到指定的路徑。
4系統無法打開文件。
5拒絕訪問。
6句柄無效。
7存儲控制塊被損壞。
8存儲空間不足,無法處理此命令。
9存儲控制塊地址無效。
10環境錯誤。
11試圖加載格式錯誤的程序。
12訪問碼無效。
13數據無效。
14存儲器不足,無法完成此操作。
15系統找不到指定的驅動器。
16無法刪除目錄。
17系統無法將文件移到不同的驅動器。
18沒有更多文件。
19介質受寫入保護。
20系統找不到指定的設備。
21設備未就緒。
22設備不識別此命令。
23數據錯誤(循環冗余檢查)。
24程序發出命令,但命令長度不正確。
25驅動器無法找出磁盤上特定區域或磁道的位置。
26無法訪問指定的磁盤或軟盤。
27驅動器找不到請求的扇區。
28打印機缺紙。
29系統無法寫入指定的設備。
30系統無法從指定的設備上讀取。
31連到系統上的設備沒有發揮作用。
32進程無法訪問文件,因為另一個程序正在使用此文件。
33進程無法訪問文件,因為另一個程序已鎖定文件的一部分。
36用來共享的打開文件過多。
38到達文件結尾。
39磁盤已滿。
50不支持網絡請求。
51遠程計算機不可用。
52在網絡上已有重復的名稱。
53找不到網絡路徑。
54網絡忙。
55指定的網絡資源或設備不再可用。
56已到達網絡BIOS命令限制。
57網絡適配器硬件出錯。
58指定的服務器無法運行請求的操作。
59發生意外的網絡錯誤。
60遠程適配器不兼容。
61打印機隊列已滿。
62無法在服務器上獲得用于保存待打印文件的空間。
63刪除等候打印的文件。
64指定的網絡名不再可用。
65拒絕網絡訪問。
66網絡資源類型錯誤。
67找不到網絡名。
68超過本地計算機網卡的名稱限制。
69超出網絡BIOS會話限制。
70遠程服務器已暫停,或正在啟動過程中。
71當前已無法再同此遠程計算機連接,因為已達到計算機的連接數目極限。
72已暫停指定的打印機或磁盤設備。
80文件存在。
82無法創建目錄或文件。
83INT24失敗。
84無法取得處理此請求的存儲空間。
85本地設備名已在使用中。
86指定的網絡密碼錯誤。
87參數錯誤。
88網絡上發生寫入錯誤。
89系統無法在此時啟動另一個進程。
100無法創建另一個系統信號燈。
101另一個進程擁有獨占的信號燈。
102已設置信號燈且無法關閉。
103無法再設置信號燈。
104無法在中斷時請求獨占的信號燈。
105此信號燈的前一個所有權已結束。
107程序停止,因為替代的軟盤未插入。
108磁盤在使用中,或被另一個進程鎖定。
109管道已結束。
110系統無法打開指定的設備或文件。
111文件名太長。
112磁盤空間不足。
113無法再獲得內部文件的標識。
114目標內部文件的標識不正確。
117應用程序制作的IOCTL調用錯誤。
118驗證寫入的切換參數值錯誤。
119系統不支持請求的命令。
120此功能只被此系統支持。
121信號燈超時時間已到。
122傳遞到系統調用的數據區太小。
123文件名、目錄名或卷標語法不正確。
124系統調用級別錯誤。
125磁盤沒有卷標。
126找不到指定的模塊。
127找不到指定的程序。
128沒有等候的子進程。
130試圖使用操作(而非原始磁盤I/O)的已打開磁盤分區的文件句柄。
131試圖移動文件指針到文件開頭之前。
132無法在指定的設備或文件上設置文件指針。
133包含先前加入驅動器的驅動器無法使用JOIN或SUBST命令。
134試圖在已被合并的驅動器上使用JOIN或SUBST命令。
135試圖在已被合并的驅動器上使用JOIN或SUBST命令。
136系統試圖解除未合并驅動器的JOIN。
137系統試圖解除未替代驅動器的SUBST。
138系統試圖將驅動器合并到合并驅動器上的目錄。
139系統試圖將驅動器替代為替代驅動器上的目錄。
140系統試圖將驅動器合并到替代驅動器上的目錄。
141系統試圖替代驅動器為合并驅動器上的目錄。
142系統無法在此時運行JOIN或SUBST。
143系統無法將驅動器合并到或替代為相同驅動器上的目錄。
144目錄并非根目錄下的子目錄。
145目錄非空。
146指定的路徑已在替代中使用。
147資源不足,無法處理此命令。
148指定的路徑無法在此時使用。
149企圖將驅動器合并或替代為驅動器上目錄是上一個替代的目標的驅動器。
150系統跟蹤信息未在CONFIG.SYS文件中指定,或不允許跟蹤。
151為DosMuxSemWait指定的信號燈事件個數錯誤。
152DosMuxSemWait不可運行。已設置過多的信號燈。
153DosMuxSemWait清單錯誤。
154輸入的卷標超過目標文件系統的長度限制155無法創建另一個線程。
156接收進程已拒絕此信號。
157段已被放棄且無法鎖定。
158段已解除鎖定。
159線程標識的地址錯誤。
160傳遞到DosExecPgm的參數字符串錯誤。
161指定的路徑無效。
162信號已暫停。
164無法在系統中創建更多的線程。
167無法鎖定文件區域。
170請求的資源在使用中。
173對于提供取消區域進行鎖定的請求不明顯。
174文件系統不支持鎖定類型的最小單元更改。
180系統檢測出錯誤的段號。
183當文件已存在時,無法創建該文件。
186傳遞的標志錯誤。
187找不到指定的系統信號燈名稱。
196操作系統無法運行此應用程序。
197操作系統當前的配置不能運行此應用程序。
199操作系統無法運行此應用程序。
200代碼段不可大于或等于64K。
203操作系統找不到已輸入的環境選項。
205命令子樹中的進程沒有信號處理程序。
206文件名或擴展名太長。
207第2環堆棧已被占用。
208沒有正確輸入文件名通配符*或?,或指定過多的文件名通配符。
209正在發送的信號錯誤。
210無法設置信號處理程序。
212段已鎖定且無法重新分配。
214連到該程序或動態鏈接模塊的動態鏈接模塊太多。
215無法嵌套調用LoadModule。
230管道狀態無效。
231所有的管道實例都在使用中。
232管道正在關閉中。
233管道的另一端上無任何進程。
234更多數據可用。
240取消會話。
254指定的擴展屬性名無效。
255擴展屬性不一致。
258等待的操作過時。
259沒有可用的數據了。
266無法使用復制功能。
267目錄名無效。
275擴展屬性在緩沖區中不適用。
276裝在文件系統上的擴展屬性文件已損壞。
277擴展屬性表格文件已滿。
278指定的擴展屬性句柄無效。
282裝入的文件系統不支持擴展屬性。
288企圖釋放并非呼叫方所擁有的多用戶終端運行程序。
298發向信號燈的請求過多。
299僅完成部分的ReadProcessMemoty或WriteProcessMemory請求。
300操作鎖定請求被拒絕。
301系統接收了一個無效的操作鎖定確認。
487試圖訪問無效的地址。
534算術結果超過32位。
535管道的另一端有一進程。
536等候打開管道另一端的進程。
994拒絕訪問擴展屬性。
995由于線程退出或應用程序請求,已放棄I/O操作。
996重疊I/O事件不在信號狀態中。
997重疊I/O操作在進行中。
998內存分配訪問無效。
999錯誤運行頁內操作。
python windows錯誤代碼 5 https://blog.csdn.net/thesnow...
Python 刪除操作出現WindowsError: [Error 5] 解決方案 https://www.waitig.com/python...
Python OS 文件/目錄方法 http://www.runoob.com/python/...
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/41867.html
閱讀 3674·2021-09-02 15:11
閱讀 4619·2021-08-16 10:47
閱讀 1573·2019-08-29 18:35
閱讀 3053·2019-08-28 17:54
閱讀 2858·2019-08-26 11:37
閱讀 1512·2019-08-23 16:51
閱讀 1820·2019-08-23 14:36
閱讀 1816·2019-08-23 14:21