如何使用 python 重命名 Windows 上的链接文件?

Posted

技术标签:

【中文标题】如何使用 python 重命名 Windows 上的链接文件?【英文标题】:How to rename a link file on Windows with python? 【发布时间】:2017-08-09 17:35:53 【问题描述】:

我在windows上有一些链接文件,然后我把它们放在一个文件夹里,我想把它们重命名为 0 1 2 ... ,这样windows就可以自动排序了。

我试过os.rename('src.txt.link', '0'),结果是“0”文件打不开。

是否有另一个 python api 可以做到这一点?

【问题讨论】:

Windows 上的链接文件通常具有.lnk 的扩展名,当您重命名文件时,您需要保留它,因为这是识别文件类型的方式。即'src.txt.lnk' -> '0.lnk'. Rename Files in Python的可能重复 windows上不需要.lnk后缀,你可以试试 当然你需要在文件名上加上 .lnk 扩展名。如果您不这么认为,那是因为您将 shell 配置为隐藏扩展。 实际上系统特别隐藏了.lnk文件的扩展名,因为HKLM\Software\Classes\lnkfile定义了值NeverShowExt。如果您重命名该注册表值并将 .lnk 文件的关联更改为某个其他 ProgId,然后再改回 lnkfile ProgId,您应该会在 shell 快捷方式的名称上看到 .lnk 扩展名。 【参考方案1】:

您不能重命名扩展名为 .lnk 的文件。看起来 Windows 阻止了该操作。相反,我建议您使用新名称复制文件,在您的情况下为 0.lnk,然后删除原始文件。

【讨论】:

以上是关于如何使用 python 重命名 Windows 上的链接文件?的主要内容,如果未能解决你的问题,请参考以下文章

在 C# / Python 中重命名远程文件服务器上的文件

windows下使用cmd重命名文件名

用于重命名和移动文件的 Python、bat 文件和任务计划程序 - 在 Windows 10 中无法正常工作

如何通过在 Windows 中使用批处理替换子字符串来重命名文件 [关闭]

在 Windows XP 上批量重命名具有国际字符的文件

在 Windows 上重命名 DLL