gpt4 book ai didi

windows - 批处理 : delete line feed from end of text file using filepaths

转载 作者:可可西里 更新时间:2023-11-01 11:16:19 25 4
gpt4 key购买 nike

这个问题与这个问题相关: Batch: delete line feed from end of text file?

所以我有一个包含一些信息的 txt 文件,我想删除最后一行 LFCR(换行,回车)字符。

我需要使用变量和文件名作为参数 (%1) 指出源文件路径和目标文件路径。

批号

@echo off
set @srcfile="D:\AgrCC\AgrTest\Report Results\%1"
set @dstfile="D:\AgrCC\AgrTest\Data Export\%1"
setlocal DisableDelayedExpansion
set "firstLineReady="
(
for /F "eol=$ delims=" %%a in (%@srcfile%) DO (
if defined firstLineReady (echo()
set "firstLineReady=1"
<nul set /p "=%%a"
)
) > %@dstfile%

但我并没有删除 LFCR 字符,而是在目标文件夹中得到一个如下所示的文件:

目标文件内容

D:\AgrCC\AgrTest\Report Results\bg1baa.725

最佳答案

在 for 循环中,您需要 usebackq 选项,这样您仍然可以使用带引号的文件名来避免空格。

变量内容不要加引号,而是使用扩展的set syntax

set "var=content"`

你应该改变

set "@srcfile=D:\AgrCC\AgrTest\Report Results\%~1"
set "@dstfile=D:\AgrCC\AgrTest\Data Export\%~1"
...
for /F "usebackq eol=$ delims=" %%a in ("%@srcfile%") DO (
...
) > "%@dstfile%"

关于windows - 批处理 : delete line feed from end of text file using filepaths,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41983065/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com