在 Windows bash 中回显文件中某个单词后的值

在 Windows bash 中回显文件中某个单词后的值

我有一个包含以下内容的配置文件:

~some stuff~  
name test  
type online  
user me  
password hello  
serverip 192.168.20.1  
timetolive 500  
randomvar 200  
~some more stuff~  

我希望编写一个 bash 来查找并显示serverip此文件中的当前内容。

期望输出:

192.168.20.1

我正在使用findstr serverip但它的输出是:

serverip 192.168.20.1

有什么简单的方法可以从结果中删除“ip”?

答案1

有什么简单的方法可以从结果中删除“ip”?

使用以下批处理文件命名test.cmd(其中配置文件名为config.txt

@echo off
setlocal enabledelayedexpansion
for /f "tokens=*" %%i in ('type config.txt ^| findstr serverip') do (
  set _line=%%i
  set _output=!_line:serverip=server!
  echo !_output!
  )
endlocal

例子:

> type config.txt
~some stuff~
name test
type online
user me
password hello
serverip 192.168.20.1
timetolive 500
randomvar 200
~some more stuff~
> test
server 192.168.20.1

进一步阅读

相关内容