博客园  :: 首页  :: 管理

笔者的实际场景,是在Powerautomate中,使用Powershell 脚本,计算出当前周/本周一的日期,输出类型 20260406 这样的8个字符的日期

使用的代码如下:

# 1. 获取当前日期
# Author: QQ-5201351
$today = Get-Date

# 2. 获取今天是星期几 (0 是星期日, 1 是星期一, ..., 6 是星期六)
$dayOfWeek = [int]$today.DayOfWeek

# 3. 计算距离星期一的天数差
# 我们的目标是星期一 (值为 1)
# 如果是星期日 (0),我们需要回退 6 天
# 如果是其他日子,直接用 1 - 当前值
if ($dayOfWeek -eq 0) {
    $daysToSubtract = 6
} else {
    $daysToSubtract = $dayOfWeek - 1
}

# 4. 计算本周一的日期
$monday = $today.AddDays(-$daysToSubtract)

# 5. 格式化为 YYYYMMDD
# ToString("yyyyMMdd") 会自动处理补零
$mondayString = $monday.ToString("yyyyMMdd")

# 6. 输出结果 (Power Automate 会捕获标准输出)
Write-Output $mondayString

结果会输出到一个变量,Powerautomate 接下来可以将变量值去前后空格,转成数字后,可以用于与其他日期进行比较,判断新旧~

 

 

 

尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/19829027