如何为PowerShell ping命令的输出文件添加时间戳文件名?
给Ping输出文件添加时间戳的方法
你可以通过在文件名中嵌入Get-Date生成的时间戳来实现需求,具体有两种写法:
写法一:分步定义变量(更清晰)
先定义带时间戳的文件名变量,再执行命令:
# 生成格式为YYYYMMDDHHMM的时间戳 $timestamp = Get-Date -UFormat "%Y%m%d%H%M" # 拼接完整的输出文件路径 $outputPath = "$ENV:UserProfile\Downloads\${timestamp}_pingresult.txt" # 执行Ping并写入文件 ping.exe -n 3600 1.1.1.1 | Foreach{"{0} - {1}" -f (Get-Date),$_} >> $outputPath
写法二:一行命令完成(更简洁)
直接把时间戳生成逻辑嵌入到文件名中:
ping.exe -n 3600 1.1.1.1 | Foreach{"{0} - {1}" -f (Get-Date),$_} >> "$ENV:UserProfile\Downloads\$(Get-Date -UFormat "%Y%m%d%H%M")_pingresult.txt"
时间戳格式说明
%Y:4位年份(如2022)%m:2位月份(如11)%d:2位日期(如08)%H:2位小时(24小时制,如10)%M:2位分钟(如06)
如果习惯用.ToString()方法生成时间戳,也可以替换成Get-Date -ToString "yyyyMMddHHmm",效果完全一致。
内容的提问来源于stack exchange,提问作者Paul
相关产品推荐
相关产品推荐

