??cmd.exe是windows NT引入的翎卓,windows NT以前的叫COMMAND.COM,它是windows的一個shell.是在Windows NT中引入的.空白處shift+右鍵,可以看到相關(guān)運行菜單,這樣開始目錄就是當前目錄.
常用內(nèi)建命令
cls 清屏
tasklist 列出當前的進程
taskkill 殺死進程
dir 列出當前目錄所有文件和文件夾
dir *.txt 列出當前目錄下的txt文件
dir /b 只列出相關(guān)文件和目錄信息,無其他
dir /b /s 列出全路徑,無其他信息
dir /b/s *.txt
echo 打印后面字面值,變量用%變量%,字符串不用加引號
^是cmd中的轉(zhuǎn)義
echo <hello>其中的<>被識別成重定向,用echo ^<hello^>轉(zhuǎn)義,將打印<hello>
set 定義變量
set name=** 注意=后面沒有空格
后面用%name%訪問
set name= 等號后面沒有內(nèi)容相當于刪除name
cd 用于切換目錄,但是不能跨盤符,
cd 返回當前目錄
cd D:\12 切換當前目錄到D:\12
cd .. 返回上級目錄,空格要用引號
color [bf]
設(shè)置背景色和前景色
color 07
默認的黑色背景和白色前景
0 黑色
1 藍色
2 綠色
3 水綠
4 紅色
5 紫色
6 黃色
7 白色
del 刪除文件
不經(jīng)過回收站.del *.* 刪除當前目錄所有文件
/p 提示確認刪除
/s 同時刪除遍歷子目錄下的相關(guān)文件
/q 安靜默認 del /q *.*不經(jīng)過確認
copy 復制文件,也可用于相同目錄的文件重命名
copy source.dat dst.dat
copy /a 以ASCII模式復制,文件中的Ctrl+Z字符被解釋成文件結(jié)束
copy /b 二進制模式復制
copy /y 覆蓋文件不經(jīng)過確認
copy /-y覆蓋文件前確認
exit終止
exit /b終止腳本但是不退出cmd,而exit終止后直接退出cmd
exit /b 1 將1作為退出碼
goto label
轉(zhuǎn)到:lable處
call 腳本
調(diào)用其他腳本
md 創(chuàng)建目錄包含不存在的中間目錄
move 移動文件
move source.dat dst.dat
move /y source.dat dst.dat 覆蓋不提示
move /-y source.dat dst.dat 覆蓋提示
pause 暫停直至輸入
popd/pushd 目錄出棧壓棧,可用于切換根目錄
rd 刪除目錄
rd /s 刪除目錄和子目錄
rd /s /q 刪除目錄和子目錄不經(jīng)過確認
rename 修改文件夾名稱
rename 舊名稱 新名稱
title 標題欄名稱
相關(guān)環(huán)境變量
%PATH%系統(tǒng)的搜索路徑
修改PATH
set PATH=%PATH%;C:\windows
%CD% 當前目錄
%DATE% 當前日期
%TIME% 當前時間
%RANDOM% 0~32767之間的隨機數(shù)
%ERRORLEVEL% 之前程序的退出狀態(tài),非0為異常,一般用if %ERRORLEVEL% 來進行相關(guān)異常處理流程,或者
if errorlevel == 0 echo program err
I/O重定向
重定向stdout到文件
tasklist>tasks.txt 新建文件
tasklist>>tasks.txt 更新文件
<file 從文件讀取到stdin
>file 寫stdout到文件
>>file 附加stdout到文件
1>file寫stdout到文件
1>>file附加stdout到文件
2>file寫stderr到文件
2>>file附加stderr到文件
2>&1 將stderr重定向到和stdout同樣的流
>nul 重定向到nul忽略相關(guān)信息
其它信息
ping www.biadu.com & ping www.hao123.com
兩個命令順序執(zhí)行
ping www.biadu.com && ping www.hao123.com
第一個命令錯誤后返回狀態(tài)不為0才執(zhí)行第二條命令
流程控制
if exist C:\data(
echo 文件存在
)else(echo 文件不存在)
文件是否存在
if exist path
或者
if not exist path
批處理文件
rem 注釋文本
setlocal/endlocal 保存恢復現(xiàn)場
@用于批處理文件中,用于不顯示命令本身,之顯示命令的結(jié)果
或者第一行用@echo off,后面的就不用@了
cmd /a或者/u用于當前是assic還是unicode輸出
彈出對話框
mshta vbscript:msgbox("我是提示內(nèi)容",64,"我是提示標題")(window.close)