Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 如何删除多个文本文件中的第一行而不将CRLF追加到文件末尾_Batch File - Fatal编程技术网

Batch file 如何删除多个文本文件中的第一行而不将CRLF追加到文件末尾

Batch file 如何删除多个文本文件中的第一行而不将CRLF追加到文件末尾,batch-file,Batch File,我想删除多个文本文件中的第一个空行。 我在stackoverflow上找到了我的问题的解决方案 http://stackoverflow.com/questions/16790431/how-to-delete-first-blank-row-in-multiple-files= 即bat脚本: @echo off for %%i in (*.txt) do ( more +1 "%%~fi">>temp del "%%~fi" ren temp "%%~nxi" ) 但是,在删除

我想删除多个文本文件中的第一个空行。 我在stackoverflow上找到了我的问题的解决方案

http://stackoverflow.com/questions/16790431/how-to-delete-first-blank-row-in-multiple-files=

即bat脚本:

@echo off
for %%i in (*.txt) do (
more +1 "%%~fi">>temp
del "%%~fi"
ren temp "%%~nxi"
)
但是,在删除第一个空行时,此脚本会在文本文件的末尾添加回车符和换行符

如何使用批处理文件在不在每个文本文件末尾添加回车符和换行符的情况下删除第一个空行?

尝试此操作-因为in-do存在一个错误,当文件夹中更新相同的文件规范时,某些文件会被处理两次等

@echo off
for %%i in (*.txt) do (
   more +1 "%%i">"%%i.temp"
   del "%%i"
)
ren *.temp *.

你的问题有两点。首先,您应该始终将代码标记为代码。第二,你应该链接到你的资料来源,也许我们可以在那里了解更多关于你主题的信息。你是对的,对不起,我已经编辑了我的问题。谢谢…感谢您的回复,但这与原始bat脚本的结果相同…more+1不会在文件末尾添加行。您使用的是Linux格式的文件还是MAC格式的文件?您知道如何在文件上使用十六进制查看器来查看发生了什么或没有发生什么吗?more会将制表符转换为空格,如果文件超过64K行,则会出现另一个问题。我从未提到more+1,所以我不知道你在说什么|我是一个普通的电脑用户。我在Windows计算机上,我认为它是常规文本文件。顺便说一下,这些文件不超过64K行。该脚本中唯一可以更改文件的命令是more命令。您是说脚本添加了行,我想您的意思是它在文本文件的底部添加了一些内容。是这样吗?