Colderleo's blog Colderleo's blog
首页
Linux
C++
Python
前端
工具软件
mysql
索引
关于
GitHub (opens new window)

Colder Leo

热爱代码的打工人
首页
Linux
C++
Python
前端
工具软件
mysql
索引
关于
GitHub (opens new window)
  • Windows
gaoliu
2021-10-06
目录

1-bat编程

# 按日期备份的脚本.bat

@echo off
color 0a
set ymd=%date:~0,4%%date:~5,2%%date:~8,2%
set hms=%time:~0,2%%time:~3,2%%time:~6,2%%time:~9,2%
set hms=%time:~-11,2%%time:~-8,2%%time:~-5,2%%time:~-2,2%
set dt=%ymd%-%hms%
echo %dt%
mkdir "%dt%"
xcopy ..\FolderToBackup\* .\%dt% /E/Y/EXCLUDE:EXCLUDE.txt
"%ProgramFiles%\WinRAR"\rar a %dt%.rar .\%dt%
rd /s/Q %dt%
pause
1
2
3
4
5
6
7
8
9
10
11
12
  • xcopy
    • /e 复制所有子目录,包括空目录;
    • /y 禁止提示确认要覆盖已存在的目标文件;
    • /exclude 排除内容。/exclude:FileName1[+[ FileName2]][+[FileName3]]

# 等待几秒ping

下面10表示等待10秒

ping /n 10+1 127.1>nul
1

# 删除

@echo on
del /A /S /F /Q D:\SandBox\16.14_copy\*.abc;*.defg
pause

删除D:\SandBox\16.14_copy\ 下面包括子目录的所有后缀为.abc和.defg的文件
/a /f 是强制删除所有属性的文件
/q是无需确认直接删除
1
2
3
4
5
6
7

# VS工程清理

ClsProjects-清理vs工程文件.bat

del *.ncb /f /s
del *.plg /f /s
del *.pch /f /s
del *.idb /f /s
del *.ilk /f /s
del *.pdb /f /s
del *.obj /f /s
del *.exp /f /s
del *.aps /f /s
del *.opt /f /s
del *.sdf /f /s
del *.ipch /f /s
del *.tlog /f /s
1
2
3
4
5
6
7
8
9
10
11
12
13

# loop标签的执行顺序

新建下面的bat文件

@echo off

SET START_MACHINE=0


for %%i in (1 2) do call :LOOP

echo goto eof
goto EOF

:LOOP
@echo here is loop pp


:EOF
echo here is eof

if %START_MACHINE%==0 (
echo 111 first time
SET START_MACHINE=1
) else (
echo 222 second time
@echo wait 5s ss
ping /n 5 127.1>nul
)

pause

执行顺序为 call :LOOP的地方调用两次loop标签,两次都从loop标签执行到结束,然后回到for语句下面那句,goto eof,继续执行标签EOF
也就是执行顺序为:LOOP----EOF-----LOOP----EOF-----EOF

@echo off

SET START_MACHINE=1

for %%i in (1 2) do call :LOOP

echo goto eof
goto EOF

:LOOP
@echo loop


:EOF
@echo eof
if %START_MACHINE%==1 (
SET START_MACHINE=2
@echo 111
) else if %START_MACHINE%==2 (
SET START_MACHINE=3
@echo 222
) else if %START_MACHINE%==3 (
ping /n 5 127.1>nul
@echo 333
pause
)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
编辑 (opens new window)
上次更新: 2021/10/11, 12:43:58
最近更新
01
通过模板实现结构体成员拷贝-按成员名匹配
05-07
02
c++17通过模板获取类成员的个数
05-01
03
avx-sse切换惩罚
04-30
更多文章>
Theme by Vdoing | Copyright © 2019-2023 Colder Leo | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×