Python修改文件名大小写后Windows资源管理器未自动刷新问题求助
Windows资源管理器无法自动刷新仅修改大小写的文件名问题
- 我写了一段Python脚本,用来批量修改目录中多个文件的名称大小写,但执行脚本后,Windows资源管理器不会自动显示新文件名,必须按下F5刷新才行。我知道Windows资源管理器本质上不区分大小写,推测仅修改大小写的操作无法被它识别为目录变更。
- 运行脚本时该目录正处于打开状态,本来应该能在窗口中看到变更。我试过两种方法:一是把文件先重命名为中间名称(比如将
file_important_stuff.txt改为test.txt,再改成目标名称File_Important_Stuff.txt);二是把文件移到其他目录再移回,但Windows 10似乎是通过对比目录中文件名的前后状态来决定是否刷新,这两种方法都没效果。 - 如果用Python的
open()函数打开每个重命名后的文件进行写入,可以强制资源管理器刷新,但这样会修改文件的修改日期,这是我不想看到的。 - 补充发现:修改1-4个文件时,Windows资源管理器会自动更新;修改5个及以上则不会。
示例代码如下:
import os for x in range(1,6): fileNameOld = "file_important_stuff_" + str(x) + ".txt" fileNameNew = "File_Important_Stuff_" + str(x) + ".txt" os.rename(fileNameOld,fileNameNew)
内容的提问来源于stack exchange,提问作者Paul K.
相关产品推荐
相关产品推荐

