2013-09-26 2 views
1

У меня есть папка с именем 'prn', которая была создана в Windows через службу синхронизации облаков.Windows 7. Не удалось удалить каталог под названием 'prn'

Я больше не являюсь подписчиком службы и попытался удалить эту папку.

Возможно, имя связано с зарезервированным термином Windows, я думаю, для очереди печати.

командная строка отрицает каталог там бросает

E:\goDropBox\Dropbox>dir prn 

Directory of \\. 

File Not Found 

E:\goDropBox\Dropbox>cd prn 
The system cannot find the path specified. 

E:\goDropBox\Dropbox>del prn 
The filename, directory name, or volume label syntax is incorrect. 

E:\goDropBox\Dropbox> 

Проводник Windows ...

An unexpected error is keeping you from deleting the folder. If you continue to receive this error, you can use this error code to search for help with this problem. 

Error 0x8007010B: The directory name is invalid 

    prn 
    Date created: 03/07/2013 

Поиск помощи на это сообщение об ошибке в основном дает советы по планировщиком задач, некоторые проблемы с ОС Windows Обновления и адресные книги Outlook.

Я также попытался удалить после остановки службы диспетчера очереди печати - та же ошибка.

У вас есть идеи?

Благодаря

+0

PRN зарезервированное имя для файлов. Правдоподобно, что вы не сможете назвать файл. http://msdn.microsoft.com/en-us/library/windows/desktop/aa365247(v=vs.85).aspx –

ответ

1

Run «Питон», а затем в командной строке введите:.

import os 
os.listdir(ur'\\?\E:\goDropBox\Dropbox\prn') 

(\\?\ является Windows, магия сказать это не лечить «PRN» специально Вы должны использовать абсолютный путь .)

Это должно печатать список файлов в этом каталоге. Так удалить их:

os.unlink(ur'\\?\E:\goDropBox\Dropbox\prn\file1') 
os.unlink(ur'\\?\E:\goDropBox\Dropbox\prn\file2') 

Затем удалите раздела:

os.rmdir(ur'\\?\E:\goDropBox\Dropbox\prn') 

Приведенные выше инструкции должны работать с 2.x Python или 3.3+.

(Вы также можете использовать любой язык программирования, с которым вы знакомы, до тех пор, пока он вызывает Unicode версии вызовов Win32 API).

отредактирован ADD: Или попробуйте:

old = u"\\\\?\\E:\\goDropbox\\Dropbox\\prn" 
new = u"\\\\?\\E:\\goDropbox\\Dropbox\\foo" 

os.rename(old, new) 

(При использовании Python 3, опустить u до строк)

+0

Спасибо. У меня была проблема с запуском этой команды python. Кажется, это немного придирчиво к спине. – Cuchulain

+0

Это ошибка неправильной синтаксической ошибки. Я скопировал ваш код непосредственно в командной строке. – Cuchulain

+0

Update: побежал следующий ... импорт ОС, SYS путь = "E: \ goDropBox \ Dropbox \ PRN" os.rename (путь "E: \ goDropbox \ Dropbox \ переименованы") Traceback (самый последний последний звонок): Файл «», строка 1, в os.переименовать (путь, «E: \ goDropbox \ Dropbox \ renamed») OSError: [WinError 87] Параметр неправильный: «E: \\ goDropbox \\ Dropbox \ renamed» Затем попытался >>> os.listdir (путь) # я получаю список из нескольких тысяч файлов >>> dirs = os.listdir (path) >>> для файла в каталогах: os.remove (file) , но ничего не выполняется - я пропал без вести что нибудь? – Cuchulain

Смежные вопросы