如何将文件命名为 Nautilus 中的第一个文件?

如何将文件命名为 Nautilus 中的第一个文件?

新版本的 Nautilus 很酷,因为它们会跳过任何文件名开头的非字母数字字母,并根据第一个字母数字字母(如果有)对文件进行排序。但是如何命名文件以便对其进行排序呢0?假设我有一个包含这些文件的文件夹:

0apple.conf
apricot.xml
banana
camel.so
cat.py
dog.tar.bz

我想添加一个或两个字母的前缀,cat.py以便将其排序在0apple.conf文件之前。我不想更改名称,只想添加前缀。我也不想更改其他人的名字。我已经尝试过:

  1. #cat.py.cat.py名称以及希腊字母前缀将文件排序到末尾( dog.tar.bz文件之后;.也更改可见性)
  2. 任何前缀都会对和,-";:-–\_(?)*+%=<>!之间的文件进行排序(就像没有任何前缀一样)。camel.sodog.tar.bz

是的,可以选择在开头附近添加更多零,但我希望文件名尽可能短并且位于最前面。

PS:我的语言是捷克语(因此排序应该是类似于csczczech的东西cs_CZ)。

答案1

前缀0已使文件在 Nautilus 中排在最前面。什么可以排在第一个文件之前?除了目录之外,没有文件可以排在最前面。无论使用哪种语言环境,这都是正确的。

文件命名

在以下示例中,我首先创建了一个名为的空文本文件,apple.txt然后制作了多个副本并通过添加单个字符前缀重命名每个文件。我只使用了最兼容的字母数字字符:0 A á _ -(空格)。这意味着我总共创建了 7 个文件,外加一个名为的目录apple以供参考。

请注意,这á是捷克语的第二个字母,它出现在本篇文章部分在 Wikipedia 上。第一个字母似乎与英语相同:Aa

文件排序

Nautilus 如何在不同的语言环境中对这些文件进行排序?结果发现它们很相似,但略有不同。请参见以下屏幕截图进行比较。

Nautilus 在英语和捷克语环境中

Nautilus 在英语环境下对文件进行排序en_US.UTF-8如下:

apple <-- directory
0apple.txt
Aapple.txt
áapple.txt
apple.txt <-- original file without prefix
 apple.txt
_apple.txt
-apple.txt

Nautilus 在 Czech 环境中对文件进行排序,cs_CZ.UTF-8如下所示:

apple <-- directory
0apple.txt
Aapple.txt
áapple.txt
 apple.txt
apple.txt <-- original file without prefix
-apple.txt
_apple.txt

在两种语言环境中,在 Nautilus 中以列表形式查看时,目录和前 3 个文件的顺序没有变化。这已经表明在 之前不能出现任何字母数字字符0apple.txt

解决方法 1

一种方法是创建名称不同于现有“apple”的文件,其前缀与0现有文件相同。创建0aaa.txt将先于现有文件0apple.txt,依此类推。

使用此解决方法,文件将按如下方式排序:

0.txt
0a.txt
0aaa.txt
0apple.txt
...

这样,该文件0.txt将成为 Nautilus 中出现的第一个文件。0.txt除非用户想要创建文件名.txt(仅使用空格字符),否则其他文件不能排在 之前。

解决方法 2

假设apple已经是第一个存在的文件,并且用户坚持要不是重命名apple,还有另一种方法:将具有较高数字前缀的现有文件从 重命名为0apple.txt9apple.txt这将允许其他具有较低数字前缀的文件0*出现8*在 之前9apple.txt

使用此解决方法,文件将按如下方式排序:

0mango.txt
1kiwi.txt
2orange.txt
...
9apple.txt
...

0apple.txt如果由于某种原因无法整体重命名,则解决方法 2 不适用。解决方法 1 会更有效,因为0.txt它总是出现在0mango.txt用户能想到的其他文件名之前。

我如何测试

在我的测试中,只安装了必要的语言环境包来准备在 Ubuntu 中运行 Nautilus 的捷克环境。通过命令在其他语言环境中运行程序的快捷方式LANG=<LOCALENAME> nautilus不起作用。因此,请执行以下步骤。

  • language-pack-gnome-cs language-pack-gnome-cs-base language-pack-cs language-pack-cs-base在终端中通过 APT安装这些软件包

  • 系统设置 > 语言和支持

  • 语言 - 菜单和窗口的语言,将名为čeština(“捷克语”的单词维基百科指出)至上文English

  • 注销并重新登录即可生效

在 Ubuntu 16.04 LTS(Live)中使用 Nautilus 3.14.3 进行测试。

总结带前缀的文件名0是 Nautilus 中的第一个文件。除目录外,其他文件都不能出现在第一个文件之前。

答案2

您是否尝试过使用空格零作为前缀?

[0cat.py]

您提到的其他字符对我来说也不起作用,但空格零可以正常工作。

您还可以尝试空格字符和零的其他组合,例如:-0cat.pay、_0cat.py 等。这些也应该可以起作用。

相关内容