DOS
文件名:
所有文件都應(yīng)該是全限定名,即:路徑名+文件名躏尉,如果只有文件名沒有路徑名缚甩,默認(rèn)為該shell所在目錄屎债。
set title pepelu
設(shè)置cmd標(biāo)題
@echo
控制臺(tái)輸出信息
rem
注釋信息
choice /c 12 M:"enter your choice"
- /c:選項(xiàng)列表
- 12:1或者2兩個(gè)選項(xiàng)
- M:"enter your choice":提示信息
- if判斷部分:先判斷標(biāo)簽最大的選項(xiàng)
IF ERRORLEVEL 2 GOTO INITX86
IF ERRORLEVEL 1 GOTO INIT
:INITX86
ECHO INIT x86
GOTO END
:INIT
ECHO INIT 64BIT
GOTO END
:END
%~d0
此批處理文件所在盤符
%~dp0
此批處理文件所在文件目錄
%cd%
當(dāng)前CMD默認(rèn)目錄
set /p u=
保存從控制臺(tái)輸入的信息到u中
set u=pepelu
設(shè)置u的值為pepelu
輸出時(shí)用:echo %u%
%為轉(zhuǎn)義字符
完整代碼
@echo off
set tile pepelu
c:
cd C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC
rem add choice
echo CHOICE SYSTEM BIT:
ECHO 1.64BIT
ECHO 2.32BIT
choice /c 12 /M:"enter your choice:"
IF ERRORLEVEL 2 GOTO INITX86
IF ERRORLEVEL 1 GOTO INIT
:INITX86
ECHO INIT x86
CALL vcvarsall x86
GOTO END
:INIT
ECHO INIT 64BIT
CALL vcvarsall
GOTO END
:END
%~d0
cd %~dp0
cls
echo input file name...
set /p fileName=
echo switch file type...
ECHO 1.C++
ECHO 2.C
CHOICE /C 12 /M:"ENTER YOUR CHOICE"
IF ERRORLEVEL 2 GOTO C
IF ERRORLEVEL 1 GOTO CPLUS
:C
ECHO THIS IS JUST FOR C
SET FILETYPE=.c
GOTO END
:CPLUS
ECHO THIS IS JUST FOR C++
SET FILETYPE=.cpp
GOTO END
:END
REM set /p fileType=
rem add choice
cl /EHsc %fileName%%FILETYPE%
%fileName%
pause
新建文件:
type > %~dp0\a.txt
//or
echo a 2>FileName
“2”表示錯(cuò)誤輸出的句柄,此例中沒有錯(cuò)誤輸出拜英,所以創(chuàng)建了沒有內(nèi)容的空文件静汤。
其實(shí)>默認(rèn)都是重定向了句柄1,即標(biāo)準(zhǔn)輸出句柄居凶。比如cd.>a.txt虫给,其實(shí)就是cd. 1>a.txt。
同樣侠碧,句柄3到9也可以使用在本例中抹估,它們是未經(jīng)定義的句柄,也不會(huì)有輸出弄兜,如
echo a 3>a.txt
http://bits00.iteye.com/blog/1585651
http://www.pstips.net/working-with-files-and-directories.html
刪除文件:
刪除當(dāng)前文件夾下以exe為后綴名的文件
del %~dp0\*.exe
打開指定文件目錄:
目錄中間可以有空格
explorer DirectoryName
DirectoryName : 要打開的文件夾路徑名
地址:
https://github.com/amorypepelu/Pepelu
del F:_desktop.ini /f /s /q /a (F代表你要操作的盤符药蜻,如果是C盤就把F改成C)
強(qiáng)制刪除F盤下所有目錄內(nèi)(包括X盤本身)的_desktop.ini文件并且不提示是否刪除。
/f 表示強(qiáng)制刪除文件
/s表示子目錄都要?jiǎng)h除該文件
/q表示無聲替饿,不提示
/a根據(jù)屬性選擇要?jiǎng)h除的文件
R 只讀文件 S 系統(tǒng)文件
H 隱藏文件 A 存檔文件
- 表示“否”的前綴
例:
刪除F盤下及其子目錄下的所有指定文件
del F:/*.pdb /f /s /q /a (刪除F盤下的所有后綴名為pdb的文件)
rd 刪除文件夾(非空)
rd /s fileName 刪除文件夾
rd /s /q fileName 刪除文件夾语泽,不提問
清除 DNS 緩存
ipconfig /flushdns