.bat 批處理腳本

————————基礎——————————
@echo off #將回顯關閉,這也是最常用的方法
rem ss你好好 #註釋,回顯
:: sssssss #註釋,不回顯
%sss% #註釋,(不常用,慎用)
echo "hello " #顯示echo後的內容
echo ss>a.txt #將ss作爲內容放到a.txt文件中,若不存在a.txt則創建它,>重定向符
echo ssss>>a.txt #將“ssss”添加到a.txt尾部 ,>>s重定向符
type a.txt #顯示a.txt文件中的內容
E:\環境變量.txt #使用默認程序打開相應的文件
echo %errorlevel% #每個命令運行結束,判斷上一條命令是否執行成功默認值爲0,出錯會設 errorlevel 爲非0
pause #返回dos窗口
echo 其他提示語 & pause > nul #顯示其他提示語作爲結束語


—————————start———————————
@echo off  
start "" "E:\softpackage\數據庫軟件\Navicat for MySQL\navicat.exe" #不加"" 會進入cmd,不能啓動程序
start "" "D:\software\wangyiyun_music\網易雲音樂PC版\cloudmusic.exe" #start 執行後返回bat
pause 


————————————call————————————————
CALL命令可以在批處理執行過程中調用另一個批處理,當另一個批處理執行完後,再繼續執行原來的批處理。


@ echo off  
goto label  
echo 1  
echo 2  
  
:label  
echo 3  
echo 4   
執行結果爲 1 2


@ echo off  
call :label  
echo 1  
echo 2  
  
:label  
echo 3  
echo 4 
執行結果爲1234


分析:goto很單純,直接Go to 到了某地方,而call則有點調用的意味,調用了,還要返回。


@ echo off  
call test.bat  
echo 2 


@ echo off  
echo 1 


執行結果爲 1 2




@echo off
Echo 產生一個臨時文件 > tmp.txt
Rem 下行先保存當前目錄,再將c:\windows設爲當前目錄
pushd c:\windows
Call :sub tmp.txt
Rem 下行恢復前次的當前目錄
Popd
Call :sub tmp.txt
pause
Del tmp.txt
exit
:sub
Echo 刪除引號: %~1
Echo 擴充到路徑: %~f1
Echo 擴充到一個驅動器號: %~d1
Echo 擴充到一個路徑: %~p1 
Echo 擴充到一個文件名: %~n1
Echo 擴充到一個文件擴展名: %~x1
Echo 擴充的路徑指含有短名: %~s1 
Echo 擴充到文件屬性: %~a1 
Echo 擴充到文件的日期/時間: %~t1 
Echo 擴充到文件的大小: %~z1 
Echo 擴展到驅動器號和路徑:%~dp1
Echo 擴展到文件名和擴展名:%~nx1
Echo 擴展到類似 DIR 的輸出行:%~ftza1
Echo.
Goto :eof




———————goto—————————
@echo off
:start #構建標號,讓goto使用
set /a var+=1 #"/a" 是爲了讓SET可以支持數學符號進行加減等一些數學運算
echo %var% #顯示var的值
if %var% leq 3 GOTO start #leq 小於等於的意思
pause


—————————set———————————
@echo off  
set s=10 #直接爲變量s賦值
set /p var=請輸入變量的值:   #讓用戶輸入值賦值給var變量
if %var% == 1 echo 您輸入了 1 ~_~  
if %s% == 10 echo s=10
pause  


————————find————————
@echo off
echo 11111 >test.txt
echo 22222 >>test.txt
type test.txt|find "111" #在文件中找到含有111的字符串
del test.txt #刪除文件
pause


——————————attrib————————————
  +   設置屬性。
  -    清除屬性。
  R   只讀文件屬性。
  A   存檔文件屬性。
  S   系統文件屬性。
  H   隱藏文件屬性。
  [drive:][path][filename]
      指定要處理的文件屬性。
  /S  處理當前文件夾及其子文件夾中的匹配文件。
  /D  也處理文件夾。


@echo off
md autorun #創建文件夾
attrib +a +s +h autorun #設置文件夾屬性(設置完成後文件夾不能被看見-隱藏的)
pause


———————————批處理中的變量———————————————
———————————交互界面設計———————————————
一、交互界面設計


沒啥說的,看看高手設計的菜單界面吧:
@echo off
cls
title 終極多功能修復
:menu
cls
color 0A
echo.
echo                 ==============================
echo                 請選擇要進行的操作,然後按回車
echo                 ==============================
echo.
echo              1.網絡修復及上網相關設置,修復IE,自定義屏蔽網站
echo.
echo              2.病毒專殺工具,端口關閉工具,關閉自動播放
echo.
echo              3.清除所有多餘的自啓動項目,修復系統錯誤
echo.
echo              4.清理系統垃圾,提高啓動速度
echo.
echo              Q.退出
echo.
echo.
:cho
set choice=
set /p choice=          請選擇:
IF NOT "%choice%"=="" SET choice=%choice:~0,1%
if /i "%choice%"=="1" goto ip
if /i "%choice%"=="2" goto setsave
if /i "%choice%"=="3" goto kaiji
if /i "%choice%"=="4" goto clean
if /i "%choice%"=="Q" goto endd
echo 選擇無效,請重新輸入
echo.
goto cho
發佈了66 篇原創文章 · 獲贊 2 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章