String 从批处理脚本替换文本文件中的行
因此,我有一个批处理脚本,它对交换机执行telnet操作,并在交换机上运行一些命令。String 从批处理脚本替换文本文件中的行,string,batch-file,replace,split,String,Batch File,Replace,Split,因此,我有一个批处理脚本,它对交换机执行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 -tel
我需要在文本文件中每次更改一行。这是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
我需要替换主批处理脚本中的ip地址不能用批处理替换文件中的内容。您必须重新创建整个文件 首先删除最后一行。这很简单,因为这是唯一一条包含点的线:
find /v "." commands.txt > commands.tmp
然后将新行添加到新文件:
>commands.tmp echo %NetworkIP%
并将其重命名为原始名称:
move /y commands.tmp commands.txt
替换为什么?使用主脚本中的NetworkIP变量,IP地址每次都会更改,因此我必须每次都替换它(schoolnetwork)
move /y commands.tmp commands.txt