1 批处理延时
timeout /t 秒 /nobreak
例如timeout /t 30 /nobreak 表示延时30后执行下一行命令,nobreak表示不中断
2 连接多条命令
& 顺序执行多条命令,而不管命令是否执行成功
&& 顺序执行多条命令,当碰到执行出错的命令后将不执行后面的命令
|| 顺序执行多条命令,当碰到执行正确的命令后将不执行后面的命令(即:只有前面命令执行错误时才执行后面命令)
| 管道命令 前一个命令的执行结果输出到后一个命令 如:help|more
> 清除文件中原有的内容后再写入
>> 追加内容到文件末尾,而不会清除原有的内容主要将本来显示在屏幕上的内容输出到指定文件中指定文件如果不存在,则自动生成该文件
3 for循环及其嵌套复制文件
for /L %%i in (1,1,8) do (
for %%j in (2,4) do (
xcopy %sourcePath%\Lane0%%i\Cyc00%%j %targetPath%\Lane0%%i\Cyc00%%j /i /e /y
)
)
for /L
表示循环将对一个数字序列进行迭代。括号内的三个数字分别表示起始值(1)、步长(1)和结束值(5)
for %%j表示直接对括号内的内容进行循环
xcopy 复制指定目录文件到另一指定目录
/i 表示如果目标目录不存在则会提示是否新建,如果目标目录是一个文件,则会提示是否复制到文件
/e 表示复制所有子目录(包括空目录),如果至复制文件而不复制目录,则不要添加此项
/y 表示覆盖已存在的文件,如果不希望覆盖,则不添加此项
4 批量注释多行
@GOTO :STEP1
注释内容......
:STEP1
4 获取制定路径下文件名中包含.fa.gz的文件的绝对路径
dir path\*.fa.gz /s /b | sort >fagz_list.txt
其中
/s 表示显示指定目录和所有子目录中的文件。
/b 表示使用空格式(没有标题信息或摘要)。
| 管道符,表示将前面的命令的结果输出给后面的命令
sort 排序
>fagz_list.txt 表示将结果输出到当前工作路径下的文件“fagz_list.txt ”中