使用Windows脚本删除文本文件中的行的最后一个单词

时间:2014-05-13 19:52:53

标签: batch-file cmd windows-scripting

我正在尝试使用Windows脚本删除文本文件中的行的最后一个单词。有人可以帮我提供代码吗?

我有一个文本文件test.txt,其中包含以下内容

This is a test file union
this is to check union
this is to remove union

我想获得一个批处理脚本,从文本文件的最后一行删除“union”一词。第3行(这是删除联盟)。

请帮帮我!

提前致谢

1 个答案:

答案 0 :(得分:0)

试试这样:

@echo off
set "$DelVar=Union"
set "$File=test.txt"

if exist Output.txt del Output.txt
for /f %%a in ('Find /V /C "" ^< %$File%') do set "$Nbligne=%%a"
setlocal enabledelayedexpansion
set "$c=1"
for /f "delims=" %%a in (%$File%) do (
   set "$Line=%%a"
   if !$c!==%$Nbligne% (
      set "$last=%%a"
      set "$Last=!$Last:%$DelVar%=!"
      echo !$Last!>>output.txt
      exit/b
   )
   echo !$Line!>>output.txt
   set /a $c+=1
)

它将创建一个文件Output.txt,而不包含最后一行的单词Union。 您可以在变量$DelVar中设置要删除的字词,并在$File

中设置要检入的文件