2017-02-01 20 views
1

を使用して、テキストファイルの末尾から改行を削除します。 Batch: delete line feed from end of text file?バッチ:この質問はこの質問に関連しているファイルパス

だから私はいくつかの情報を含むTXTファイルを持っていると私は最後の行LFCR(行を削除したいですフィード、キャリッジリターン)chars。

変数とファイル名をパラメータ(%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 

答えて

4

forループでは、usebackq optiが必要ですこれにより、引用符で囲まれたファイル名を使用してスペースを守ることができます。

可変コンテンツに引用符を追加しないでください。代わりに、拡張子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%" 
+0

完璧、おかげで男を変更する必要があります:) – dadde

関連する問題