我的知识记录

如何修改文件的修改时间和日期 如何更改文件的修改时间和日期

Windows 系统

方法一:使用 PowerShell(推荐)


 
powershell
# 修改单个文件的修改时间 (Get-Item "C:\path\to\your\file.txt").LastWriteTime = "2024-01-01 12:00:00" # 修改多个文件的修改时间 Get-ChildItem "C:\path\to\folder\*.txt" | ForEach-Object { $_.LastWriteTime = "2024-01-01 12:00:00" }

方法二:使用 CMD 命令


 
cmd
# 通过 PowerShell 命令修改 powershell "(Get-Item 'C:\path\to\file.txt').LastWriteTime = '2024-01-01 12:00:00'"

Linux/macOS 系统

使用 touch 命令


 
bash
# 基本语法修改修改时间 touch -m -t YYYYMMDDHHMM filename # 实际示例 touch -m -t 202401011200 myfile.txt # 同时修改访问时间和修改时间 touch -t 202401011200 myfile.txt

格式说明:

  • -m:只修改修改时间(modification time)
  • -t:指定时间,格式为 YYYYMMDDHHMM[.SS]
  • 例如:202401011200 表示 2024年1月1日12点00分

跨平台编程方法

Python 方式:


 
python
import os import time from datetime import datetime # 方法1:使用 datetime 对象 def set_modification_time(filepath, dt): timestamp = time.mktime(dt.timetuple()) os.utime(filepath, (timestamp, timestamp)) # (访问时间, 修改时间) # 使用示例 new_time = datetime(2024, 1, 1, 12, 0, 0) set_modification_time("myfile.txt", new_time) # 方法2:使用时间字符串 def set_modification_time_str(filepath, time_str, format="%Y-%m-%d %H:%M:%S"): dt = datetime.strptime(time_str, format) timestamp = time.mktime(dt.timetuple()) os.utime(filepath, (timestamp, timestamp)) # 使用示例 set_modification_time_str("myfile.txt", "2024-01-01 12:00:00")

Node.js 方式:


 
javascript
const fs = require('fs'); // 修改文件的修改时间 fs.utimes('myfile.txt', new Date(), new Date('2024-01-01T12:00:00'), (err) => { if (err) throw err; console.log('修改时间已更新'); }); // 同步版本 fs.utimesSync('myfile.txt', new Date(), new Date('2024-01-01T12:00:00'));

批量修改多个文件

PowerShell 批量修改:


 
powershell
# 修改文件夹中所有 .txt 文件的修改时间 Get-ChildItem "C:\path\to\folder" -Filter "*.txt" | ForEach-Object { $_.LastWriteTime = "2024-01-01 12:00:00" } # 修改特定类型文件(递归搜索) Get-ChildItem "C:\path\to\folder" -Filter "*.log" -Recurse | ForEach-Object { $_.LastWriteTime = "2024-01-01 12:00:00" }

Bash 批量修改:


 
bash
# 修改当前目录下所有 .txt 文件 for file in *.txt; do touch -m -t 202401011200 "$file" done # 递归修改所有子目录中的文件 find /path/to/folder -name "*.txt" -exec touch -m -t 202401011200 {} \;

注意事项

  1. 权限要求:确保对目标文件有写入权限
  2. 时间格式:不同系统对时间格式的要求略有差异
  3. 时区影响:时间修改可能会受到本地时区影响
  4. 系统限制:某些系统保护重要系统文件的时间戳不被修改

如何修改文件的修改时间和日期 如何更改文件的修改时间和日期

标签:

更新时间:2025-12-13 16:08:14

上一篇:怎么修改文件时间日期 文件夹怎么修改修改日期

下一篇:如何更改文件时间和日期 怎么把文件的修改时间改了 如何修改文件创建时间