我想用批处理脚本编辑一个 txt 文件。我在网上查看并尝试调整一些示例以满足我的需要。但是我没有编程技能,也无法让我的程序正常工作。
这是我的问题。我有一个 txt 文件,其中包含文件中的某个位置:
Subcase Mode Buckling Eigenvalue
321043 1 2.124238E+00
321043 2 2.169874E+00
321043 3 2.628187E+00
321043 4 2.832127E+00
321043 5 2.968359E+00
321043 6 3.131774E+00
我想把它改成这样:
R E A L E I G E N V A L U E S
Subcase Mode Buckling Eigenvalue
321043 1 2.630623E-01
321043 2 2.676471E-01
321043 3 2.982211E-01
所以基本上在“Subcase Mode Buckling Eigenvalue”之前添加“REALEIGENVALUE S”两行,但不删除之前行中的内容。即添加两个新行。
我尝试了以下方法,但它只将前 8 行打印到新文本文件中
@echo off
for /f "tokens=* delims=" %%a in (le_panel_7_cut down_i.out) do call :Change "%%a"
exit /b
:Change
set Text=%~1
if "%Text%"=="Subcase Mode Buckling Eigenvalue" (
(echo R E A L E I G E N V A L U E S &echo[ &echo[ &echo[Subcase Mode Buckling Eigenvalue)>> D:\FEA\newfile.txt
) else (
(echo %Text%)>> D:\FEA\newfile.out
)
exit /b
我还尝试了另一个看起来像这样的脚本,但这也不起作用。
@echo on
SETLOCAL=ENABLEDELAYEDEXPANSION
for /f "delims=" %%a in (le_panel_7_cut_down_i.out) do (
set foo=%%a
if !foo!=="Subcase Mode Buckling Eigenvalue" set foo=(
echo R E A L E I G E N V A L U E S &echo[ &echo[ &echo[Subcase Mode Buckling Eigenvalue)
echo !foo! >> file3.txt)
如果有人纠正我的脚本,将不胜感激。问候伊恩