无法删除/移动文件名中带有特殊字符的文件

尖叫

正如您在下面看到的,文件中有不常见的字符。

文件管理器截图

在终端或Dolphin中删除它们会返回错误:

没有这样的文件或目录

ls -la在目录上运行给了我以下输出:

-rw-rw-r--  1 aalap aalap      0 Nov 14 01:05 ??
-rw-rw-r--  1 aalap aalap      0 Nov 14 01:05 ?2?.???љ?!?Gb??σ?[?F?
-rw-rw-r--  1 aalap aalap      0 Nov 14 01:05 ??3]d???:????????1????G?p?ȋ??????嫳?d????ą-??
-rw-rw-r--  1 aalap aalap      0 Nov 14 01:05 3l??#g?w????O?JKB7?co??քH??bT?NA???S???X?I?A?qC??M?I???
-rw-rw-r--  1 aalap aalap      0 Nov 14 01:05 ??8??-?@,?Zp?[?bI????7^?ñ[?ڏ??z?O???ч??eEȰ?+??,OF??h

我在fsck另一个操作系统的分区上运行了一个命令,但没有任何改变。

如何删除这些文件?

马尔特·斯科鲁帕(Malte Skoruppa)

一种简单的方法是通过它们的inode删除这些文件。:)

使用ls -li目录与常见的字符显示每个文件的inode编号,例如,

$ ls -li
total 0
133370 -rw-r--r-- 1 malte malte 0 Dec 30 19:00 ?2?.???љ?!?Gb??σ?[?F?
132584 -rw-r--r-- 1 malte malte 0 Dec 30 18:59 ??3]d???:????????1????G?p?ȋ??????嫳?d????ą-??

接下来,使用该find实用程序,使用语法删除相应文件的名称find <somepath> -inum <inode_number> -exec rm -i {} \;,如以下示例所示:

$ find . -inum 133370 -exec rm -i {} \;
rm: remove regular empty file ‘./?2?.???љ?!?Gb??σ?[?F?’? y
$ ls -li
total 0
132584 -rw-r--r-- 1 malte malte 0 Dec 30 18:59 ??3]d???:????????1????G?p?ȋ??????嫳?d????ą-??

-i选项rm是不是真的有必要,我只是说这让你从你并不想删除意外删除的文件。:)它导致rm要求确认要删除的每个文件。

如果要通过它们的inode删除多个文件,则可以将-o(意义)语法用于find

$ find .  \( -inum 133370 -o -inum 132584 \) -exec rm -i {} \;
rm: remove regular empty file ‘./?2?.???љ?!?Gb??σ?[?F?’? y
rm: remove regular empty file ‘./??3]d???:????????1????G?p?ȋ??????嫳?d????ą-??’? y

您可以通过将括号内的表达式扩展为更多-o -inum <inode_number>表达式来添加更多的索引节点号

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

删除文件名中带有特殊字符的目录

来自分类Dev

无法删除文件名中包含特殊字符的文件

来自分类Dev

无法删除文件名中包含特殊字符的文件

来自分类Dev

带有特殊字符的文件名

来自分类Dev

无法删除带有“?”的文件 在文件名中

来自分类Dev

从文件名中删除特殊字符

来自分类Dev

从文件名中删除特殊字符

来自分类Dev

pandas:文件路径和文件名中带有重音/特殊字符的 oserror

来自分类Dev

处理带有特殊首字符的文件名(例如♫)

来自分类Dev

Lazarus ListBox SaveToFile 带有特殊字符的文件名

来自分类Dev

python子进程模块无法解析带有特殊字符“(”的文件名

来自分类Dev

python子进程模块无法解析带有特殊字符“(”的文件名

来自分类Dev

在Linux中批量删除文件名中的特殊字符

来自分类Dev

在Windows中从文件名中批量删除特殊字符

来自分类Dev

从powershell中的文件名中删除特殊字符

来自分类Dev

Powershell从文件名中删除特殊字符

来自分类Dev

从文件名中删除某些特殊字符

来自分类Dev

如何在Linux中连续创建带有特殊字符(如()和空格)的文件名?

来自分类Dev

在“超越比较”中,如何排除带有特殊字符的文件名?

来自分类Dev

awk 在 *system call* 中处理带有特殊字符的文件名

来自分类Dev

bash,删除文件名中带有字母的文件

来自分类Dev

无法从文件名读取特殊字符

来自分类Dev

删除目录中文件名中带有连字符的文件

来自分类Dev

更改bash中具有特殊字符的文件名

来自分类Dev

Android视频视图:无法播放文件名中带有“%”字符的视频文件

来自分类Dev

如何在文件移动期间移动文件并删除文件名中的连字符?

来自分类Dev

文件名Java中的特殊字符

来自分类Dev

无法从FileInputstream中读取带有俄语字符的文件名

来自分类Dev

名称中带有 # 的文件名无法下载

Related 相关文章

  1. 1

    删除文件名中带有特殊字符的目录

  2. 2

    无法删除文件名中包含特殊字符的文件

  3. 3

    无法删除文件名中包含特殊字符的文件

  4. 4

    带有特殊字符的文件名

  5. 5

    无法删除带有“?”的文件 在文件名中

  6. 6

    从文件名中删除特殊字符

  7. 7

    从文件名中删除特殊字符

  8. 8

    pandas:文件路径和文件名中带有重音/特殊字符的 oserror

  9. 9

    处理带有特殊首字符的文件名(例如♫)

  10. 10

    Lazarus ListBox SaveToFile 带有特殊字符的文件名

  11. 11

    python子进程模块无法解析带有特殊字符“(”的文件名

  12. 12

    python子进程模块无法解析带有特殊字符“(”的文件名

  13. 13

    在Linux中批量删除文件名中的特殊字符

  14. 14

    在Windows中从文件名中批量删除特殊字符

  15. 15

    从powershell中的文件名中删除特殊字符

  16. 16

    Powershell从文件名中删除特殊字符

  17. 17

    从文件名中删除某些特殊字符

  18. 18

    如何在Linux中连续创建带有特殊字符(如()和空格)的文件名?

  19. 19

    在“超越比较”中,如何排除带有特殊字符的文件名?

  20. 20

    awk 在 *system call* 中处理带有特殊字符的文件名

  21. 21

    bash,删除文件名中带有字母的文件

  22. 22

    无法从文件名读取特殊字符

  23. 23

    删除目录中文件名中带有连字符的文件

  24. 24

    更改bash中具有特殊字符的文件名

  25. 25

    Android视频视图:无法播放文件名中带有“%”字符的视频文件

  26. 26

    如何在文件移动期间移动文件并删除文件名中的连字符?

  27. 27

    文件名Java中的特殊字符

  28. 28

    无法从FileInputstream中读取带有俄语字符的文件名

  29. 29

    名称中带有 # 的文件名无法下载

热门标签

归档