如何使用批量删除文件的第一行?

问题描述 投票:0回答:4

如何使用批量删除文件的第一行?

我真的需要帮助......我已经尝试了一切,但没有成功。 :( 我试过这个:

@echo off
Type test.txt | findstr /I /V /C:"So, lets remove this line" >>Test2.txt
exit
batch-file cmd text-files findstr
4个回答
5
投票

一些任务使用纯批处理技术(和破坏字符)是笨拙的 - 这是一个强大的解决方案,并使用名为

findrepl.bat
的辅助批处理文件,该文件使用来自 - http://www.dostips.com/ 的内置 jscript-ing论坛/viewtopic.php?f=3&t=4697

findrepl.bat
放在与批处理文件相同的文件夹中。

type "file.txt"|findrepl /v /o:1:1 >"newfile.txt"

另一种方法是使用

more.exe
,但它在 64K 时有行数限制,并且会破坏 TAB 字符。

more +2 <file.txt >newfile.txt

2
投票
(echo off
for /f "skip=1 tokens=1* delims=" %A in (c:\windows\win.ini) do echo %A
echo on)

1
投票

您需要逐行循环遍历文件并输出除第一行之外的每一行。

从您的示例来看,您可能正在寻找特定的字符串。

尝试这个问题/答案..它可能会帮助你走上正路。


0
投票

删除文本文件的第一行:

more +1 testfile

for /f "skip=1 tokens=*" %i in ('type "testfile" ^| find /v /n ""') do (
REM ove prefixed line numbers:
set a=%i
set a=!a:*]=! 
echo:!a!)

在 Win 10 cmd 中测试。

© www.soinside.com 2019 - 2024. All rights reserved.