【问题标题】:send batch processing to a file将批处理发送到文件
【发布时间】:2016-10-02 16:51:04
【问题描述】:

我有一个文件 text.txt,它被下面的代码解析。批处理文件有效,但我希望输出写入一个新文件(或修改原始文件,以更容易者为准)。目前,输出仅显示在命令窗口中。

@echo off
setlocal EnableDelayedExpansion

set LF=^

%var1% 
%var2%

set "EOL=!LF!" & set "EOL2=!LF!"

for /F %%a in (test.txt) do (
   if %%a equ PROP-SUMMARY set "EOL=!LF!"
   set /P "=%%a!EOL!" < NUL
   set "EOL0=!EOL!" & set "EOL=!EOL2!" & set "EOL2=!EOL0!"
   if %%a equ PROP-VALUES set "EOL=,"
)  

这是 test.txt

4.12
0
1
1
21
PROP-VALUES
625
4.12
945
3.64
PROP-SUMMARY
400
400
Thickness  

这是 new.txt

4.12
0
1
1
21
PROP-VALUES
625,4.12
945,3.64
PROP-SUMMARY
400
400
Thickness  

【问题讨论】:

  • %var1%%var2% 是干什么用的?
  • 它们是占位符。如果它们被删除,脚本将不起作用。
  • 您可以删除它们!您只需要确保set LF=^ 后跟两个空行,仅此而已...

标签: file batch-file


【解决方案1】:

cmd.exe >> "%SystemDrive%/Users/%username%/Desktop/test.txt"

这不会覆盖 test.txt 而是添加到它。 让它覆盖 test.txt 做

cmd.exe > "%SystemDrive%/Users/%username%/Desktop/test.txt"

【讨论】:

    猜你喜欢
    • 2020-12-24
    • 1970-01-01
    • 1970-01-01
    • 2012-06-05
    • 1970-01-01
    • 2012-12-22
    • 2010-10-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多