『壹』 簡單的批處理 將變數輸出到文本 失敗了
這是因為整個if 語句是一復合語句,批處理會進行一次預處理%a%類的把它處理成if 之前的變數 a 的值,顯然之前並沒賦值即%a%為空,對於echo 命令為空就是顯示當前回顯狀態
加call並雙寫%是解決變數延遲擴展的一種方法
兩句改為
call echo %%a%%> lalala.txt
call echo %%b%%>> lalala.txt就能得到正常結果
一般的方法是在之前加上setlocal enabledelayedexpansion語句
並在使用%a%之類時用!a!代替即可
『貳』 批處理如何將文本文檔內容輸出到變數
在>>前加一空格即可
即
echo
shutdown
/r
/f
/t
0
>>%userprofile%\test.txt
空格不會影響shutdown命令的執行
『叄』 bat如何將變數內容寫入txt
比如我在D盤有個文本,名為123.TXT
如何使用BAT自動將以下字串符加入到123.TXT內指定行並保存?
比如說第版四行
字串符如下:權
測試 100 200 300 400
@echo off& setlocal enabledelayedexpansion
(for /f "delims=" %%1 in (d:\1.txt)do (set /a wind+=1
if !wind!==4 (echo %%1& echo 100 200 300 400)else echo %%1))>d:\2.txt& move d:\2.txt d:\1.txt
用一個變數計算當前是第幾行
到指定行時,就寫入特定內容
『肆』 批處理如何將變數輸出到文本
樓主,幫你測試了,可以啊:
@echo off
set /p tel=請輸入電話號碼
echo %tel% >> c:\tel.log
start "" "c:\tel.log"
『伍』 .bat 把一個賦值語句當做文本寫入變數
這樣試試:
set str=x^=1
『陸』 如何把批處理中的變數值寫入txt文本中
已測試。成功輸出數字4。
set /a x=2
set /a x=x+2
echo %x% >1.txt
pause
『柒』 批處理 將大文件內容導入到變數
在批處理中,一個變數最多可以存8190個位元組的數據,如果要存的數據比這個還要多,那就只能用多個變數分開存儲了。
『捌』 批處理將txt文件部分內容賦值給一個變數
@echooff&
for/f"tokens=1-2"%%ain(1.txt)do(
if"%%b"=="device"(ifnotdefinedSN(set"SN=%%a")else(set"SN=!SN!%%a"))
)
setSN&pause
『玖』 批處理:如何將文本文件的內容讀入變數
把for內的%mstring%改成!mstring!
既然知道用EnableDelayedExpansion (開啟變數延遲擴展),怎麼不知道用!符呢,在復合句里%%符的變數是在預處理時一次性擴展其值的,也就是說取的set MString=時的值即未定義,所以當for結束後最終是最後一次的值(如果在for內顯示將最後一次賦值都顯示不出來)
『拾』 批處理替換文件內容,怎麼將變數寫入文本文件特定行
你指的特定行是第幾行是吧?
tittle 替換指定行內容
setlocal enabledelayedexpansion
set /a n=0
set /p hanghao=輸入替換行的行號
set /p neirong=輸入替換行的內容
pause
for /f "delims=" %%a in (123.txt) do (
set /a n=n+1
if !n! equ !hanghao! (
echo !neirong! >>d:\2.txt
) else (
echo %%a >>d:\2.txt
))
notepad d:\2.txt
pause