从批处理脚本替换文本文件中的行

因此,我有一个批处理脚本,该脚本可以telnet到交换机并在其上运行一些命令。
我每次都需要在文本文件中更改一行。这是IP地址的第五行。我该怎么办?

@echo off
set IP=""
:start

set /p IP="Enter IP Adress:"

    echo : IP is set to %IP%
    cd "C:\Program Files\PuTTY\"
    echo : Trying to connect to %IP%
    plink.exe -telnet %IP% < C:\Users\w0w40\Desktop\5ahitn\shruns\commands.txt

for /f "delims=[] tokens=2" %%a in ('ping -4 -n 1 %ComputerName% ^| findstr [') do set NetworkIP=%%a

pause
goto start

这是主要的批处理脚本,我需要替换为COMMANDS.txt

ITAC
enable
ITAC
copy running-config tftp:
10.51.11.75

我需要替换主批处理脚本中的IP地址

supercow0000 回答:从批处理脚本替换文本文件中的行

您不能用批处理替换文件中的某些内容。您必须重新创建整个文件。

首先删除最后一行。这很容易,因为它是唯一包含点的线:

find /v "." commands.txt > commands.tmp

然后将新行添加到新文件中:

>commands.tmp echo %NetworkIP%

并将其重命名为原始名称:

move /y commands.tmp commands.txt
本文链接:https://www.f2er.com/2935580.html

大家都在问