2014-02-26 57 views
0

我有第二線的其特定第三字必須被提取並且被寫入另一個文件 例如一個文本文件:在上述文件讀取使用批處理第二線的第三字命令

line1: ELEMENT * CHEKDOUT 
line2: ELEMENT * ABC 
line3: ELEMENT * \dir 

.. 'ABC' 具有要被提取並寫入另一個文件中,說TEMP.TXT

回答

1
<file.txt (set /p "line=" & set /p "line=") 
for /f "tokens=3" %%a in ("%line%") do echo %%a>temp.txt 
0

作爲批次線:

set "word=" 
for /f "skip=1okens=3" %%w in (yourtextfilename) do if not defined word set "word=%%w" 

for /f "skip=1okens=3" %%w in (yourtextfilename) do set "word=%%w"&goto nextcmd 
:nextcmd 

,世界將變得無法訪問爲%word%

如果你只想在新文件中

for /f "skip=1okens=3" %%w in (yourtextfilename) do >newfilename echo(%%w&goto nextcmd 
:nextcmd 
0

您可以使用setx命令在Using SETX command to get tokens from a file充分說明的一個通常被忽略的功能的話。例如:

for /F "tokens=3" %%a in ('"setx /F filename.txt dummyVar /A 1,2"') do set "var=%%a" & goto continue 
:continue 
echo %var:~0,-1% > temp.txt 

注意,在setx /A命令行和令牌被從零計數。也許你需要調整for命令中的「tokens = 3」值;這對於西班牙語版本是正確的。您可以單獨執行setx命令來檢查它。例如:

C:\> type test.txt 
ELEMENT * CHEKDOUT 
ELEMENT * ABC 
ELEMENT * \dir 

C:\> test 

C:\> type temp.txt 
ABC 

C:\> setx /F test.txt dummyVar /A 1,2 

Valor extraído: ABC. 

CORRECTO: se guardó el valor especificado. 
相關問題