Войти

Показать полную графическую версию : [решено] удалить файл с именем ..


Dis74
06-08-2009, 10:22
при переносе в Far2 фалов в папку ..\ файлы перенеслись но создался файл .. и теперь не удаляется. полагаю что при переносе был создан файл, и присвоены не корректные атрибуты. удалить файл не возможно, в винде его не видно вообще. проверка диска ничего не дает. Winhex при поиске выдает ошибку. как исправить?

http://img40.imageshack.us/img40/3937/bugfilename.th.jpg (http://img40.imageshack.us/img40/3937/bugfilename.jpg)http://img171.imageshack.us/img171/4366/winhexbug.th.jpg (http://img171.imageshack.us/img171/4366/winhexbug.jpg)

monkkey
06-08-2009, 11:19
chkdsk /f делали?

Dis74
06-08-2009, 11:37
chkdsk делал. NDD пробывал. acronis при изменении радела тоже не находит ошибок.

ShaddyR
06-08-2009, 12:15
Dis74, Unlocker (http://ccollomb.free.fr/unlocker/).

Dis74
06-08-2009, 12:34
какой унлокер? файл не занят. он не заблокирован. имя " . . " означает "папка уровнем выше", и физически не может существовать как отдельный файл. из-за сбоя Far2 он создался, и теперь его тупо нельзя удалить. потому что ". ." это ссылка на папку уровнем выше. И если на файл нажать то переходишь папку уровнем выше.

Angry Demon
06-08-2009, 13:14
Dis74, попробуй del \\?\c:\путь_к_файлу\..

Если открыть файл, имя которого содержит концевой пробел или точку, с помощью стандартной команды Win32, эти пробелы или точки отсекаются до того, как файл фактически будет открыт. Поэтому при наличии в одной папке двух файлов с названием «AFile.txt» и «AFile.txt » (обратите внимание на пробел после имени файла) при попытке открыть второй файл с помощью стандартных вызовов Win32 будет открыт первый файл. Точно так же при попытке открыть файл с именем « » (символ пробела) с помощью стандартных процедур вызова Win32 будет открыта родительская папка файла.

How to Remove Files with Reserved Names in Windows (http://support.microsoft.com/kb/120716/)
How to Remove Files with Reserved Names in Windows XP (http://support.microsoft.com/kb/315226/)

Вкратце, все действия предпринимать из консоли.

ShaddyR
07-08-2009, 02:08
какой унлокер? файл не занят. он не заблокирован. имя " . . " означает "папка уровнем выше", и физически не может существовать как отдельный файл. из-за сбоя Far2 он создался, и теперь его тупо нельзя удалить. потому что ". ." это ссылка на папку уровнем выше. И если на файл нажать то переходишь папку уровнем выше. »
Рад за тебя. Дважды повторять не обязательно. Скажи проще: ты попробовал? Или ограничился теоретическими изысками?

Dis74
07-08-2009, 12:44
ShaddyR, пробовал.

Angry Demon:

C:\Games\Dendy>posix /c rm C:\Games\Dendy\VN037\..
posix: не удается запустить процесс

C:\Games\Dendy>posix /c rm C:\Games\Dendy\VN037\
posix: не удается запустить процесс

C:\Games\Dendy>posix /c rm C:\Games\Dendy\VN037
posix: не удается запустить процесс

C:\Games\Dendy>rd \\.\C:\Games\Dendy\VN037\
Папка не пуста.

C:\Games\Dendy>rd \\.\C:\Games\Dendy\VN037\..
Папка не пуста.

C:\Games\Dendy>rd \\.\C:\Games\Dendy\VN037
Папка не пуста.



но идею с посиксом понял ) попробую из *nix удалить.

Angry Demon
07-08-2009, 12:47
Dis74, вообще-то я разговор начал с:
попробуй del \\?\c:\путь_к_файлу\..

Dis74
07-08-2009, 17:39
Angry Demon, вариант с del пишет что файл не найден.

Dis74
10-08-2009, 06:12
Проблема решена. удалилось из MS-DOS 6.22 (пришлось установить :) ). там папка .. отображается как E2E2~1 (по моему) и без проблем удаляется.

Angry Demon
10-08-2009, 08:23
Dis74, ну, дык, начинать с этого надо было, что у тебя FAT, а не NTFS!

Dis74
10-08-2009, 08:58
сорри. вроде писал об этом... видимо при очередном редактировании удалил. в любом случае все спасибо.




© OSzone.net 2001-2012