文件重命名,python 批处理
file rename, python batch-processing
我是编码新手,最多只知道 VBA。
不过我想要一个 python 脚本,它将重命名文件夹中的所有 excel 文件。它需要在字符串的开头包含文件的最后修改日期。日期格式将为 YYYYMMDD。
例如原文件名为"CWI001-CA-E1140",修改后的文件名为“20150422_CWI001-CA-E1140”。
我正在使用 windows 8,在此先感谢。
使用 os.listdir
to get a list of file in a directory, and os.rename
重命名文件。
import datetime
import os
DIRECTORY = '.'
for filename in os.listdir(DIRECTORY):
# Skip non-xls file
if not filename.lower().endswith('.xls'):
continue
path = os.path.join(DIRECTORY, filename)
mtime = os.path.getmtime(path) # modification time
prefix = datetime.datetime.fromtimestamp(mtime).strftime('%Y%m%d')
newpath = os.path.join(DIRECTORY, prefix + '_' + filename)
# rename it
os.rename(path, newpath)
我是编码新手,最多只知道 VBA。
不过我想要一个 python 脚本,它将重命名文件夹中的所有 excel 文件。它需要在字符串的开头包含文件的最后修改日期。日期格式将为 YYYYMMDD。
例如原文件名为"CWI001-CA-E1140",修改后的文件名为“20150422_CWI001-CA-E1140”。
我正在使用 windows 8,在此先感谢。
使用 os.listdir
to get a list of file in a directory, and os.rename
重命名文件。
import datetime
import os
DIRECTORY = '.'
for filename in os.listdir(DIRECTORY):
# Skip non-xls file
if not filename.lower().endswith('.xls'):
continue
path = os.path.join(DIRECTORY, filename)
mtime = os.path.getmtime(path) # modification time
prefix = datetime.datetime.fromtimestamp(mtime).strftime('%Y%m%d')
newpath = os.path.join(DIRECTORY, prefix + '_' + filename)
# rename it
os.rename(path, newpath)