我想在Windows XP中使用dos批處理文件編程在已存在的文本文件中的特定行寫入一行文本。我也想從用戶輸入行號。任何幫助將不勝感激。windows批處理文件編程
2
A
回答
4
實例提示用戶:
:MENU
SET /P TYPE=Type the line number and press enter:
if "%TYPE%"=="1" goto ONE
if "%TYPE%"=="2" goto TWO
if "%TYPE%"=="3" goto THREE
if "%TYPE%"=="4" goto FOUR
if "%TYPE%"=="5" goto FIVE
goto MENU
注:對於使用-L選項可以產生較大的交叉檢查命令; 欲瞭解更多信息,請鍵入c:> FOR /?
FOR IN/L%變量(開始,步驟,結束)DO命令[命令參數]
The set is a sequence of numbers from start to end, by step amount.
So (1,1,5) would generate the sequence 1 2 3 4 5 and (5,-1,1) would
generate the sequence (5 4 3 2 1)
FOR/L %%一個IN(1,1,1000)DO如果「%TYPE %「==」 %%一個」轉到:VALIDNUM
@echo off
rem this only prompts the user for a number
set VALIDNUM=
:MENU
cls
echo.
echo.
If NOT "%VALIDNUM%"=="" echo the number is %VALIDNUM%
echo.
SET /P TYPE=Type a line number and press enter:
FOR /L %%a IN (1,1,1000) DO if "%TYPE%"=="%%a" set VALIDNUM=%TYPE%
goto MENU
3
也許你不應該使用批處理。或者,也許你不應該使用批處理。
也許這樣的事情可能會起作用。我沒有經過測試。
setlocal enabledelayedexpansion
SET /a counter=0
echo. > newfile
for /f "usebackq delims=" %%a in (yourfile.txt) do (
if "!counter!"=="%1" echo "YOUR SPECIFIC LINE" >> newfile
if not "!counter!"=="%1" echo %%a >> newfile
set /a counter+=1
)
move newfile yourfile.txt
但是,如果您使用的是DOS而不是Windows NT的版本,它將無法正常工作。 (如果你使用的是Windows,而不是DOS編輯標記)
2
用戶advanced batch file editor Dr.Batcher,你就可以只是點擊幾下創建這樣的腳本!
相關問題
- 1. 編程批處理文件
- 2. 批處理文件編程
- 3. 如何編寫Windows批處理文件
- 4. 編譯CLASSPATH在Windows批處理文件
- 5. windows批處理文件編程 - 獲取COMPORT編號
- 6. 批處理文件的Windows
- 7. Windows批處理文件
- 8. Windows批處理文件處理 - 循環
- 9. cmd編程批處理文件循環
- 10. 如何從Windows批處理文件編輯文本文件?
- 11. 在Windows下使用批處理文件編輯文本文件
- 12. 批處理文件 - 關閉通過批處理文件過程
- 13. 使用powershell編輯Windows批處理文件中的文件
- 14. 帶批處理的Windows批處理文件夾循環
- 15. Windows,批處理文件時間條件
- 16. Windows批處理文件循環通過目錄處理文件?
- 17. 批處理編程中的文件處理?
- 18. Windows批處理
- 19. 批處理文件在Windows中運行其他批處理文件
- 20. 如何從另一個批處理文件調用Windows批處理文件
- 21. Windows批處理文件:if else
- 22. Windows批處理文件中的變量
- 23. Windows批處理文件'cut'like feature
- 24. Windows批處理文件不驗證年
- 25. windows批處理文件:psexec和findstr
- 26. Windows批處理文件語法
- 27. 從Windows批處理文件解析URL
- 28. 嵌套在Windows批處理(* .bat)文件
- 29. Windows批處理文件擴展變量
- 30. 串聯在Windows批處理文件
感謝您的回覆。我正在使用Windows XP。我打算爲此寫一個批處理文件。我嘗試過這個。但是「!」符號會導致錯誤。我想在已經存在的文本文件的特定行中寫入一行文本。同時我需要輸入行號。來自user.Now此代碼清除我現有的文件。更多幫助? – 1355 2010-09-17 10:47:41
第六行應該是,如果不是「!counter!」==「%1」echo %% a >> newfile – 2010-09-17 15:06:53
是的,我很久沒有觸及批處理。修正了。可以自由編輯我的帖子,爲其他錯誤。 – BatchyX 2010-09-17 17:00:49