我有一个文件:
På hjul.mkv
当我尝试移动或删除文件时
rm: can't remove 'På Hjul.mkv': No such file or directory
尝试发出$ rm *P*
或类似命令时也会发生同样的事情:
wobba:/media/disk/ # rm P*
rm: can't remove 'På Hjul.mkv': No such file or directory
我该怎么做才能将其删除或重命名?
编辑:我使用的操作系统是基于 Debian 的Openelec 媒体中心。硬盘采用 NTFS 格式,系统重启无济于事。
ls -l P*
rm P*
作用与名称相同:
wobba:/media/disk/ # ls -l P*
-rw------- 1 root root 1395882911 Apr 25 11:17 På Hjul.mkv
编辑2:Openelec 使用 BusyBox,它不包含-inum
查找inode number
命令find
。
答案1
尝试通过文件 ID 删除它,文件 ID 通常是基于 ext 的文件系统上的 inode 编号,但对于 NTFS,我希望它会显示等效的 NFTS 文件 ID,您可以尝试使用它来删除它。
虽然不能保证这种方法一定有效,但值得一试。例如:
matt@mattdev::/tmp/ls -il
total 0
20090 -rw------- 1 matt matt 0 Apr 26 18:27 tmpQJyK5Q
16284 -rw-rw-r-- 1 matt matt 0 Apr 26 18:26 unity_support_test.0
其次是:
find . -inum 20090 -exec rm -i {} \;
当然,上面不是使用 NTFS 而是使用 ext4。我很好奇它是否有效。
答案2
顺便说一句,我刚刚在 BusyBox 上遇到了这个问题,这个帮我解决了:
$ rm -i * # CAUTION Be **SURE** you include the '-i' on this command! CAUTION
然后,我对该目录中的所有文件都回答了否,直到找到有问题的文件(在我的例子中,一个不可打印的字符显示为问号,例如:?filename,然后我回答是)。噗。找到有问题的文件后,您可以按 ctrl-c 进行交互式 rm。
答案3
为了真正做到这一点,我必须使用 Samba 共享并从同一网络中的 Windows 计算机中删除文件。即便如此,重命名或移动也无法通过 Samba 进行,只能删除。
谢谢斯科特。