2013-07-11 63 views
-2

我有一個文本文件,在C:\path.txt中將其稱爲path.txt,並且它每次只有一行文本。該行文本將是一個文件路徑,稱之爲C:\projects\test.txt如何在批處理文件中使用路徑名中的字符串變量來打開文件

C:\path.txt開始讀取文本然後第二次在批處理文件中使用sort命令將文件路徑由path.txt中的文本字符串定義爲字母的最佳方式是什麼?

最後,我想從該C:\path.txt文件中刪除文本行。

請讓我知道這是太模糊還是需要更好的解釋和預先感謝。

的批處理文件,我現在讀:

FOR /F "tokens=*" %%i IN (C:\DONOTMODIFY.txt) DO @ECHO %%i

set "filename=%%i"

SORT filename /O filename

回答

2

爲什麼只有一行的人工限制嗎?無論如何,這是很簡單的。無論如何,這將在target.txt中處理任意數量的行。在實際使用之前,請將我的頭編碼以便測試。

@echo off 
for /f %%i in (target.txt) do (
    sort %%i /o %%i 
) 
echo. > target.txt 

編輯

相反的echo. > target.txt你可以使用​​實際創建不同於回聲完全空文件。這是一個空白的行。

PS:提示將來的問題:顯示你確實嘗試了一些東西。這不是爲我的程序做你的網站。

+0

謝謝,這是我需要的關鍵,謝謝你的提示,我應該也發佈了我的批處理文件的內容。至於單行限制,它使得此設計流程中的前一步更簡單,並且只有一行我認爲for循環可能不是必需的。我原本: FOR/F 「令牌= *」 %%我(C:\ DONOTMODIFY.txt)DO @ECHO %%我 集 「文件名= %% i」 的 排序文件名/ O文件名 – landonairey

+0

好是的,但批量閱讀文件基本上是** for/f **的工作。你可以這樣做,而不是更好:** set/p test = joojaa

相關問題