0
我搜索改變一些東西。修改批量查找替換並使用標籤
我得到了一個查找和替換這裏:http://www.dostips.com/?t=Batch.FindAndReplace
我想與製表替換逗號。但是我取代%1%2%3是錯誤的。
@echo off
SETLOCAL ENABLEEXTENSIONS
SETLOCAL DISABLEDELAYEDEXPANSION
@echo off set OldStr=,
@echo off set NewStr=\t
@echo off set FilePath=%UserProfile%\Desktop\information.csv
if "%OldStr%"=="" findstr "^::" "%~f0"&GOTO:EOF
for /f "tokens=1,* delims=]" %%A in ('"type %FilePath%|find /n /v """') do (
set "line=%%B"
if defined line (
call set "line=echo.%%line:%OldStr%=%NewStr%"
for /f "delims=" %%X in ('"echo."%%line%%""') do %%~X
) ELSE echo.
)
我不確定\ t的工作。
我嘗試更改命令,因爲我需要1個批處理文件來完成所有我想要的操作。
原始
@echo off
REM -- Prepare the Command Processor --
SETLOCAL ENABLEEXTENSIONS
SETLOCAL DISABLEDELAYEDEXPANSION
::BatchSubstitude - parses a File line by line and replaces a substring"
::syntax: BatchSubstitude.bat OldStr NewStr File
:: OldStr [in] - string to be replaced
:: NewStr [in] - string to replace with
:: File [in] - file to be parsed
:$changed 20100115
:$source http://www.dostips.com
if "%~1"=="" findstr "^::" "%~f0"&GOTO:EOF
for /f "tokens=1,* delims=]" %%A in ('"type %3|find /n /v """') do (
set "line=%%B"
if defined line (
call set "line=echo.%%line:%~1=%~2%%"
for /f "delims=" %%X in ('"echo."%%line%%""') do %%~X
) ELSE echo.
)
我想利用這個腳本在我自己的批處理文件。所以我需要通過var來改變參數。
我可以看到有你的代碼錯誤的許多潛在領域。你應該開始嘗試逐行理解代碼的作用,檢查你是否想要做什麼,然後回來更具體的問題。我們很樂意爲您提供幫助。 – 2013-04-25 16:38:02
我編輯我的帖子。我是批量生產者,我可以從全球範圍內理解它做了什麼,但爲什麼〜這麼多%的東西。我問,因爲有些人已經知道如何做改變。 – forX 2013-04-25 16:45:31
閱讀關於Set /中的環境變量替換? – 2013-04-25 17:55:02