如何将批处理命令输出放在 csv 文件的所需列中
Posted
技术标签:
【中文标题】如何将批处理命令输出放在 csv 文件的所需列中【英文标题】:How to put batch command output in desired column of csv file 【发布时间】:2021-08-02 16:38:02 【问题描述】:我是批处理编程的新手,我花了 8 个小时试图弄清楚如何解决我的问题。这就是我在这里的原因,我确定我已经昏倒了……
我有一个命令
@ECHO OFF
echo Demarre le %date:~0,8% a %time:~0,5% >> C:\TEMP\pointage.csv
在pointage.csv中放入PC启动的日期(我们称之为A)
我有另一个命令
@Echo Off&SetLocal
For /F "UseBackQ Tokens=1-4" %%A In (
`Powershell "$OS=GWmi Win32_OperatingSystem;$UP=(Get-Date)-"^
"($OS.ConvertToDateTime($OS.LastBootUpTime));$DO='d='+$UP.Days+"^
"' h='+$UP.Hours+' n='+$UP.Minutes;Echo $DO"`) Do (
Set "%%A"&Set "%%B"&Set "%%C")
Echo Temps de fonctionnement: %d% jour, %h% heures, %n% minutes >> C:\TEMP\pointage.csv
Echo Eteint le %date:~0,8% a %time:~0,5% >> C:\TEMP\pointage.csv
在pointage.csv中放入PC关机的日期(调用B)+启动和关机之间经过的时间(调用C强>)
问题是:
A、B和C位于A1中A、A2中B, A3 for C 在我的 pointage.csv
我想说:
每个 A 在 A 列上产生结果,
每个 B 列 B 上的结果,
每个 C 结果都在 C 列上。
在我的 pointage.csv
中如何做到这一点?我尝试了很多东西,例如创建 3 个 files.txt 并将它们放在 A、B 和 C 中,然后尝试用于 /F 函数。但我没有找到任何有点作用的东西。
感谢您的帮助!
【问题讨论】:
【参考方案1】:好的,我找到了问题,很简单……
echo "hello";"stack";"overflow" >> pointage.csv
工作
这是我的所有代码:
@echo off
setlocal
for /f %%a in ('wmic os get lastbootuptime ^| find "."') do (
set _datetime=%%a
)
set _boottime=%_datetime:~6,2%-%_datetime:~4,2%-%_datetime:~0,4%%_datetime:~8,2%:%_datetime:~10,2%
For /F "UseBackQ Tokens=1-4" %%A In (
`Powershell "$OS=GWmi Win32_OperatingSystem;$UP=(Get-Date)-"^
"($OS.ConvertToDateTime($OS.LastBootUpTime));$DO='d='+$UP.Days+"^
"' h='+$UP.Hours+' n='+$UP.Minutes;Echo $DO"`) Do (
Set "%%A"&Set "%%B"&Set "%%C"
)
Echo "%_boottime%";"%date:~0,8% %time:~0,5%";"%d% days, %h% hours, %n% minutes" >> C:\TEMP\pointage.csv
endlocal
【讨论】:
以上是关于如何将批处理命令输出放在 csv 文件的所需列中的主要内容,如果未能解决你的问题,请参考以下文章
Python:将系列添加到数据框架中,并没有将数据放在正确的列中。
python 使用所需列输出来自两个实验的数据,按其内容过滤区域。