无法删除以“._”开头且包含特殊字符的隐藏文件

无法删除以“._”开头且包含特殊字符的隐藏文件

文件名为._03 Überlin.mp3,位于 Western Digital NAS 外部驱动器上的文件夹中,可通过 Mac 访问:

$ ls -al
total 128
drwxrwxr-x@ 1 kraftydevil  staff   264 Jul 23 03:58 .
drwxrwxr-x@ 1 kraftydevil  staff   296 Jul 24 05:30 ..
-rw-rw-rw-  1 kraftydevil  staff  4096 Aug 24  2013 ._03 Überlin.mp3

尝试

Finder:简单删除
在此处输入图片描述
结果是“无法完成操作,因为找不到一个或多个所需项目。(错误代码 -43)”

Finder:删除封闭文件夹
在此处输入图片描述
结果是“由于项目“相册”正在使用中,因此无法完成该操作。”

终端:rm 尝试

$ #escape the space
$ rm ._03\ Überlin.mp3 
rm: ._03 Überlin.mp3: No such file or directory

$ #escape the space and the 'Ü'
$ rm ._03\ \Überlin.mp3 
rm: ._03 Überlin.mp3: No such file or directory

$ #escape the space, the 'Ü', and the '_'
$ rm .\_03\ \Überlin.mp3 
rm: ._03 Überlin.mp3: No such file or directory

$ #use single quotes
$ rm '._03 Überlin.mp3'
rm: ._03 Überlin.mp3: No such file or directory

$ #use double quotes
$ rm "._03 Überlin.mp3"
rm: ._03 Überlin.mp3: No such file or directory

$ #use --
$ rm -v -- ._03\ Überlin.mp3 
rm: ._03 Überlin.mp3: No such file or directory

终端:使用“find”删除

find . -type f -name "._*" -perm +w -delete

无输出且文件仍然存在

终端:按 Inode 号查找删除

$ ls -ali
total 128
94691 drwxrwxr-x@ 1 kraftydevil  staff   264 Jul 24 12:45 .
96821 drwxrwxr-x@ 1 kraftydevil  staff   296 Jul 24 12:33 ..
94756 -rw-rw-rw-  1 kraftydevil  staff  4096 Aug 24  2013 ._03 Überlin.mp3

$ find . -inum 94756 -delete
find: -delete: unlink(./._03 Überlin.mp3): No such file or directory

答案1

使用 MacOS Finder ctrl-select(右键单击)->获取文件信息

然后您应该能够在“名称和扩展名”字段中编辑文件名。

我刚刚用各种特殊符号和字符的组合对此进行了测试,并且所有符号和字符似乎都可以毫无困难地重命名回一些更简单的字符集。

如果你不能那么问题就不在于字符,而在于文件系统本身。

您说它既是 NAS [网络附加设备],又是“外部驱动器” - 但我通常认为外部驱动器是通过 USB 或其他电缆直接连接的。

如果是通过网络连接的,则 NAS 本身上的某些其他进程可能会使文件保持打开状态。请检查驱动器是否有 USB 端口可用作本地驱动器而非网络驱动器,然后您可以执行以下操作:

如果是 USB,您应该重新启动到单用户模式 ​​[重新启动时按住 Command+S] 并在单用户命令提示符中尝试 - 作为最后的手段,您还可以使用 fsck 来检查驱动器,按照以下解释:https://www.maketecheasier.com/repair-mac-hard-disk-with-fsck/

相关内容