自己寫批次檔的經驗不多,常需要參考別人寫的範例,完成一些簡單的操作。經過多年的摧殘,終於略有心得,在此野人獻曝一番。
喜愛命令行、批次處理的你,歡迎分享個人的使用經驗。不過,本主題的定位,並非想當成指令索引、工具書看待,這樣會缺少樂趣。
先想一個範例心得好了,標題是「內部命令 echo 的小應用」。
===============
1. 內部命令 echo 的小應用
想產生一個 test.reg 的檔案,內容如下:
語法:
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\CTF]
"Disable Thread Input Manager"=dword:00000001
自己大都是這樣寫的。
語法:
echo Windows Registry Editor Version 5.00>test.reg
echo.>>test.reg
echo [HKEY_CURRENT_USER\Software\Microsoft\CTF]>>test.reg
echo "Disable Thread Input Manager"=dword:00000001>>test.reg
echo.>>test.reg
不過,以下這種寫法也是可以的。用小括弧將 echo 命令打包,最後輸出到檔案。
語法:
(
echo Windows Registry Editor Version 5.00
echo.
echo [HKEY_CURRENT_USER\Software\Microsoft\CTF]
echo "Disable Thread Input Manager"=dword:00000001
echo.
)>test.reg
依據前一個寫法,又修改了一下。效果和前面的相同。
語法:
(
echo/Windows Registry Editor Version 5.00
echo/
echo/[HKEY_CURRENT_USER\Software\Microsoft\CTF]
echo/"Disable Thread Input Manager"=dword:00000001
echo/
)>test.reg
因為是自由格式 (free format),所以想要這樣寫也行。只有一個小地方要注意,那就是 '>' 必須和 ')' 在同一行。
語法:
( echo/Windows Registry Editor Version 5.00
echo/
echo/[HKEY_CURRENT_USER\Software\Microsoft\CTF]
echo/"Disable Thread Input Manager"=dword:00000001
echo/
) > test.reg
此外,如果想新增一個 0 位元組的檔案,可以使用以下的外部命令:
語法:
fsutil file createnew new.txt 0
用這個方法也可以達到相同的效果:
語法:
echo on 1>1.txt 2>2.txt
還有這個當然也行:
書籤