2015-11-13 62 views
-3
mango apple 

56.88 97.22 

rat cat 

bull   dog 

這是a.txt中的文本。我需要一個批處理腳本在時間 來處理每一個字即閱讀它並將其存儲在其中需要進一步處理 可變例如:從.txt中收集數據並使用批處理它

  1. 芒果%VAR1%被設置並且應當在下一個處理

  2. 蘋果in%var2%

  3. 56.88 in%var1%。

  4. 再次在97.22%VAR2%......等等,

回答

0

您的文字是在文本文件中。記事本只是一個文本編輯器。不知道我是否真的理解你的問題,但這是我認爲你正在嘗試做的一件事。

@ECHO OFF 
FOR /F "delims=" %%G IN (a.txt) DO (
    FOR %%I IN (%%G) DO ECHO %%I 
) 
+0

現在看到的問題... –

+0

@VivekGUTHIKONDA - 只需用'set'語句替換'echo' ... – SomethingDark

0

這應該工作

@echo off 
cls 
setlocal enabledelayedexpansion 
for /f "tokens=1,2" %%a in (a.txt) do (
set var1=%%a 
set var2=%%b 

echo var1 values is - !var1! 
echo var2 values is - !var2! 
) 
) 
+0

ThnX非常有幫助! –

+0

@Vivek GUTHIKONDA,如果你發現我的答案有幫助,請投票,如果它解決了你的問題,請接受我的答案,其他人可以更容易地找到類似問題的答案。 – prudviraj

0

下存儲每個項目在文本文件中a.txt爲可變ITEM兩個嵌套循環。外部的每行讀取文件行;內部獲得單獨項目,由SPACETAB,,,;=分開。如果一行中只有一個項目,或者甚至兩個以上,它也可以工作。由於變量在代碼塊(循環)中被更改和讀取,擴展(讀取)如%ITEM%不起作用;您需要啓用Delayed Expansion,然後讀取像!ITEM!這樣的變量。請輸入setlocal /?cmd /?瞭解更多信息。

@echo off 
setlocal EnableExtensions EnableDelayedExpansion 
for /F "usebackq eol=| tokens=*" %%L in ("a.txt") do (
    for %%I in (%%L) do (
     set "ITEM=%%I" 
     rem process each ITEM: 
     echo Item: !ITEM! 
    ) 
) 
endlocal 

對於這種方法假定在文本文件中的項目不包含以下任何特殊字符:?*%!/\:()&^|<>"。如果發生這種情況將會失敗。

相關問題