Windows 命令行

2023-11-12

Windows命令行

1.echo 显示内容
echo 内容 (类似log)
echo on/off 打开/关闭回写
@echo off 内容 pause (写pause时才进行输出)

2.cd 进入目录
cd 内容 (path路径,进入到对应的文件夹下面,如果不是当前盘符,需要先执行 盘符:(e:))
cd … 进入父目录
cd \ 返回根目录
cd e: (显示之前盘符所在目录)
e: (盘符: 表示进入某个盘(记录上次进入这个盘的目录,直接进入到对应目录)) 直接进入e盘根目录 cd /d d:

3.dir 显示目录中的内容
dir (显示当前目录中子文件夹和文件 (包含创建时间、大小、文件夹与文件的文件名称) )
dir /b (只显示当前目录中的子文件夹与文件的文件名)
dir /p (分页显示当前目录中的子文件夹与文件)
dir /ad (显示当前目录中的子文件夹(只显示文件夹,不显示文件))
dir /a-d (显示当前目录中的文件(只显示文件,不显示文件夹))
dir ttt.txt (显示ttt.txt文件的信息)
dir 文件夹(也可以包含目录文件夹,显示该文件夹下面子文件夹和文件 包含文件信息 (并没有进入到这个文件夹路径))

4.tree 显示目录结构
tree 路径(显示对应文件夹里面的目录结构)

5.ren ttt.txt 测试.txt (将当前目录下的ttt.txt改名为测试.txt)
ren 测试 测试01 (直接改对应目录下面的文件夹名)

6.md (创建文件夹)
md 文件夹名 (将在当前目录中创建文件夹)
md e:\work\测试 (直接在对应目录创建文件夹)
cd.>测试.txt (将在当前目录中创建txt文件)
echo 你好>c.txt (创建txt并写入文字)

7.rd (删除文件夹)
rd 文件夹名 (将在当前目录中删除文件夹)
rd e:\work\测试 (直接在对应目录删除文件夹)
rd 测试 /s /q (删除当前目录中的文件夹,包括子文件夹和子文件 /s表示删除子文件夹与子文件 /q表示不需要删除请求,安静模式)
del /p ttt.txt (删除每一个文件之前提示确认)
del /f ttt.txt(强制删除只读文件)
del /s ttt.txt(删除所有子目录中的指定的文件)
del /a ttt.txt(根据属性选择要删除的文件)
del /f/s/q ttt.txt(删除文件,并进行提示)

8.copy 拷贝文件
copy 测试.txt e:\ (将测试文件拷贝到e盘目录下)
copy 测试.txt 路径+文件名 (例:copy 测试.txt e:\测试\test.txt)(将文件拷贝到对应路径下,并且重命名)
copy /y 测试.txt 路径+文件名 (不需要询问是否覆盖)
copy /y 文件夹 e:(拷贝文件夹下面的所有文件到对应目录,不包括子文件夹,使用xcopy可以更方便 直接在后面加上/s)
copy 测试.txt+ (重新复制一个自己,实际只修改了文件日期)
copy 测试1.txt+测试2.txt 新.txt (将当前目录下的测试1和测试2合并写入新的.txt)

9.xcopy 更强大的复制命令
xcopy 文件夹路径 目标文件夹 (将文件夹路面的所有内容拷贝到目标文件夹里面 直接指定不包含子目录)
xopy 文件夹路径 目标文件夹 /s (将文件夹路面的所有内容靠背到目录文件夹路面,包含子目录(但我的电脑测试的是不包含子目))
xcopy 文件夹路径 目标文件夹 /d: 月-日-年 /s /y (将文件夹路面的超过这个日期的的文件全部拷贝到目标文件夹里面,包含子目录(但我的电脑测试的是不包含子目))

10.move 移动文件
move 测试.txt e:\ /y (移动测试到e盘)
move *.txt e:\ /y (移动所有后缀为txt到e盘) 例:move MyFo*.txt e:\Test (当目标文件夹为空时,就不能移动成功)
move 测试文件夹 e:\new (移动文件夹到new 文件夹,如果存在new文件夹,直接移动到该目录下,如果不存在,则将移动的文件夹移动到对应目录后把根目录文件夹改名为new)

11.del 删除文件 不会删除文件夹及子文件夹
del 文件夹 /q(删除当前目录下的文件夹中所有非只读文件,子目录下的文件不删除,并且还会进行删除前确认 == del/f new*)
del /f 文件夹 (含只读文件,子文件夹下的文件不删除,并且还会进行删除前确认 ==del/f new*)
del /f/s/q 文件夹 (含资质文件,含子文件夹下的文件)
del /a-r . 文件夹(删除当前文件夹下所有只读文件)
del /a-s . 文件夹(删除当前文件夹下除系统文件以外的所有文件)

12.replace 替換文件
replace 测试.txt e:\文件夹 (使用测试.txt 去替换e盘下面q文件夹下面的测试2.txt)

13.bat窗口

数字-颜色 数字-颜色
0=黑色 8=灰色
1=蓝色 9=浅蓝色
2=绿色 A=淡绿色
3=浅绿色 B=淡浅绿色
4=红色 C=淡红色
5=紫色 D=淡紫色
6=黄色 E=淡黄色
7=白色 F=黄白色

– 下面这个标题可能是乱码,另存为 ANSI 格式就好

[
@echo off
title 测试bat
color 03 (16进制 0背景颜色黑色 1字体颜色)
mode con cols=50 lines=100
pause
]

14.文件写入内容

[
@echo off
title 测试bat
color 03
mode con cols=80 lines=50
d:
cd d:\NewFo
echo bat测试命令00 >测试2.txt ( >> 直接写入到原来的尾部) ( > 表示覆盖写入 )
pause
]

15.type 显示文本内容

[
@echo off
title 测试bat
color 03
mode con cols=80 lines=50
d:
cd d:\NewFo
type 测试2.txt
pause
]

16.find 文件中搜索字符 (findstr)

[
@echo off
title 测试bat
color 03
mode con cols=80 lines=50
d:
cd d:\NewFo
find /n “测试” 测试2.txt ( (注:只可以一次输入一个) /n 显示行数 /i 搜索字符串忽略大小写 /v 显示所有未包含指定字符串的行 /c 仅显示包含字符串的行数)
pause
]

17.参数 %1-%9

[
@echo off
title 测试bat
color 03
mode con cols=80 lines=50
d:
cd d:\NewFo
echo %1% >> 测试2.txt ( >> 直接写入到原来的尾部) ( > 表示覆盖写入 )
pause
]

使用 cmd 窗口 输入路径中test.bat文件名称test 写入参数 按下回车

18.rem注释

19.if 语句 goto 语句
if “%1” == “qwer” (“参数”==“参数”)
goto 名称 (查找是根据: 名称 进行匹配)

[
@echo off
title 测试bat
color 04
mode con cols=80 lines=50
d:
cd d:\NewFo
rem echo %1% >> 测试2.txt
if “%1” == “qwer” goto A
echo 参数不等于qwer
pause
exit
:A
echo 参数等于QWER
pause
]

(注意1. 括号所在位置 2.括号与关键字中间的空格)

if “%1” “qwer” 正常的字符串判断
if {%1}
{} 判断是否有参数

[判断是否有参数
@echo off
if {%1}=={} goto A
:A
echo 没有参数
pause
]

[ 判断是否存在桌面文件学习笔记.txt
@echo off
if exist 学习笔记.txt goto A
echo 不存在
pause
exit
:A
echo 存在
pause
]

if else 语句

[
@echo off
title 测试bat
color 04
mode con cols=80 lines=50
d:
cd d:\NewFo
if “%1” == “qwer” (
echo 包含"qwer"
echo 1111
)else (
echo 不包含"qwer"
)
pause
]

20.exit 退出

21.call 命令,调用其他的.bat .cmd
call test

[
@echo off
echo 调用test
call test
pause
]

22.start 启动一个程序

[
@echo off
echo 调用test
start ““D:\Photoshop.exe””
pause
]

23.choice

[
@echo off
choice /c ync /m “确认Y,否N,取消C.” (/m代表显示的信息)
if errorlevel 3 goto C
if errorlevel 2 goto N
if errorlevel 1 goto Y

:Y
echo 确认
goto C
:N
echo 否
goto C
:C
echo 取消
pause
]

24.for
cmd窗口里:for %i in (command1) do command2 (引用变量为%i)
在bat中:for %%i in (command1) do command2 (引用变量为%%i)

在 command1 命令里面切分元素的时候,使用空格,逗号,等号作为分隔符

实例1:
cmd窗口里: for %i in (abc) do echo %i
在bat中:for %%i (a b c) do echo %%i

/L 开关控制循环次数
for /L %i in(start,step,end) do command2 (start开始的i,step递增值(如果为正递增,如果为负递减),end结束值)
示例2:
for /L %i in (1,2,10) do echo %i

/F delims=; (每一行以;符号为分割)
for /F “delims=;” %i in (学习笔记.txt) do echo %i
for /F "tokens=1,2 delims= " %i in (学习笔记.txt) do echo %i %j

tokens=2 代表取每一行的第几列 tokens=1,2 (取第一列和第二列 tokens=* (取全部))
for /F "tokens=1,2 delims= " %i in (学习笔记.txt) do echo %i %j
(bat:for /F "tokens=1,2 delims= " %%i in (学习笔记.txt) do echo %%i %%j)
for /F "tokens=* delims= " %i in (学习笔记.txt) do echo %i (取得全部以这个符号分割的字符)

eol 忽略以什么字符开头那一行
for /F "eol=e skip=2 tokens=* delims= " %i in (学习笔记.txt) do echo %i

usebackq (反转) ''表示command命令 ""表示string字符串
for /f "usebackq tokens=2 delims= " %i in (‘学习笔记.txt’) do echo %i (没有任何的输出)
for /f "usebackq tokens=2 delims= " %i in (“学习笔记.txt”) do echo %i (测试是全部输出)

25.date time
2021/01/11 周一
%date:~0,4% 年
%date:~5,2% 月
%date:~8,2% 日

echo %date:~0,4%

10:26:21.16
%time:~0,2% 时
%time:~3,2% 分
%time:~6,2% 秒

echo %time:~0,2%

26.set 赋值 %变量%取值

[–bat中
@echo off
set t=%date:~0,4%
echo %t%
pause
]

27.字符串操作

%time:~0,2% --字符串截取

替换
[–bat中 字符串替换
@echo off
set t=“siki学院牛!”
echo 替换前:%t%
echo 替换后:%t:牛!=超级牛逼%
pause
]

[–bat中 字符串替换
@echo off
set t=siki学院牛!
echo 替换前:%t%
echo 替换后:%t:牛=超级牛逼%
echo t =%t%
set t=%t:牛=超级牛逼%
echo t =%t%
pause
]

拼接
[–bat中 字符串拼接
@echo off
set t1=siki学院牛!
set t2=牛逼!
echo t1t2=%t1%%t2%
echo t1=%t1%
echo t2=%t2%
set t1=%t1%%t2% --拼接
echo t1=%t1%
pause
]

扩充 C:\Users\win10\Desktop\学习笔记.txt
~1 - 删除任何引号("),扩充 %1 --这个是数字1不是字母I
  %~f1 - 将 %1 扩充到一个完全合格的路径名
  %~d1 - 仅将 %1 扩充到一个驱动器号
  %~p1 - 仅将 %1 扩充到一个路径
  %~n1 - 仅将 %1 扩充到一个文件名
  %~x1 - 仅将 %1 扩充到一个文件扩展名
  %~s1 - 扩充的路径只含有短名
  %~a1 - 将 %1 扩充到文件的文件属性
  %~t1 - 将 %1 扩充到文件的日期/时间
  %~z1 - 将 %1 扩充到文件的大小
  %~ P A T H : 1 − 查 找 列 在 路 径 环 境 变 量 的 目 录 , 并 将     到 找 到 的 第 一 个 完 全 合 格 的 名 称 。 如 果 环 境 变 量 名     未 被 定 义 , 或 者 没 有 找 到 文 件 , 此 组 合 键 会 扩 充 到     空 字 符 串     可 以 组 合 修 饰 符 来 得 到 多 重 结 果 :                 PATH:1 - 查找列在路径环境变量的目录,并将 %1 扩充   到找到的第一个完全合格的名称。如果环境变量名   未被定义,或者没有找到文件,此组合键会扩充到   空字符串   可以组合修饰符来得到多重结果:   %~dpI - 仅将 %1 扩充到一个驱动器号和路径   %~nxI - 仅将 %1 扩充到一个文件名和扩展名   %~fsI - 仅将 %1 扩充到一个带有短名的完整路径名   %~dp PATH:1        :        PATH:1 - 查找列在路径环境变量的目录,并将 %1 扩充
  到找到的第一个驱动器号和路径。
  %~ftzaI - 将 %1 扩充到类似输出线路的 DIR

echo %~nx1 (文件加扩展名)
echo %~pd1 (路径)

[–bat中 上面的符号是可以组合起来用
@echo off
echo %~nx1 --扩充到一个文件及扩展名
pause
]

[–cmd中调用
C:\Users\win10\Desktop>test C:\Users\win10\Desktop\学习笔记.txt
]

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Windows 命令行 的相关文章

随机推荐

  • 【Ansible自动化运维实战】使用Asible批量部署Apache

    Ansible自动化运维实战 使用Asible批量部署Apache 一 本次实践目的 二 Plyabook内容 三 运行playbook 一 本次实践目的 将apache批量部署到被控节点 二 Plyabook内容 hosts node1
  • 嵌入式linux闹钟,嵌入式电子闹钟课程设计.doc

    嵌入式系统综合实验 题 目 基于嵌入式的数字闹钟系统设计 学生姓名 秦乙 学 号 20071309087 学 院 电子与信息工程学院 专 业 信息工程 二 一 年 十二 月 二十七 日 目 录 论文标题错误 未定义书签 摘要和关键词错误 未
  • 利用OpenCV的函数matchTemplate()实现在图像中寻找、检索、搜索模板图像【图像模板匹配】

    利用OpenCV的函数matchTemplate 实现在图像中寻找 检索 搜索模板图像 图像模板匹配 在博文 https www hhai cc thread 220 1 1 html 中我们利用直方图的反向投影原理可以寻找图像中具有某个直
  • 绝对干货!初学者也能看懂的DPDK解析

    欢迎大家前往腾讯云 社区 获取更多腾讯海量技术实践干货哦 本文由Willko发表于云 社区专栏 一 网络IO的处境和趋势 从我们用户的使用就可以感受到网速一直在提升 而网络技术的发展也从1GE 10GE 25GE 40GE 100GE的演变
  • Google pay默认支付(payment)应用之二 -TpHceService默认被disable原因

    根据上篇文章 GooglePay默认支付 payment 应用 之一 我们提到在GmsCore Google play services 核心套件里边声明的TpHceService开机后发现被disabled 那么原因是什么呢 一起来看看吧
  • 宝塔计划 任务执行thinkphp脚本

    cd www wwwroot test com php think content
  • 【持续更新】ubuntu中的git命令

    持续更新 ubuntu中的git命令 git init 初始化本地目录作为本地仓库 git remote add origin xxxxxxx xxxxxxxx是指git地址 本条命令是将本地仓库和远程仓库连接起来 git pull ori
  • VulnHub实战篇六:Me And My Girlfriend靶机渗透记录

    0x00靶机信息 下载地址 下载地址 攻击机ip 172 16 12 137 靶机ip 172 16 12 141 目标 getshell 获取两个flag 并提权至root 0x01过程 首先识别一下目标开启的端口和服务 可以看到目标开启
  • line-height 百分比和数值设置行高

    一 line height的值为百分比 子集元素继承父级元素的距离 1 例如
  • Java Collections singletonMap()方法具有什么功能呢?

    转自 Java Collections singletonMap 方法具有什么功能呢 下文笔者将讲述singletonMap 方法的功能简介说明 如下所示 singletonMap 方法的功能 返回一个不可变的map 里面只包含一个键和值
  • 如何在vscode中使用gdb命令行与打印指针数组

    在debug的程序处于中断状态时 必须是中断状态 可使用 exec command的格式在vscode对应的debug窗口中输出gdb命令 如何打印一个指针数组 以main 函数的指令数组argv为例 可以通过如下指令打印其值 exec x
  • python资本市场财务数据分析_Python对股票财务数据进行可视化分析

    对股票财务数据进行分析是非常必要 但因股票数据量很大 单凭浏览网页或在软件客户端查看是非常浪费精力的一件事 通过Python进行网页数据提取 将财务数据图表化会更加直观 以下代码在Python 3 6环境下通过 注 使用注意 将此代码保存为
  • 一次APM32替换STM32的经历分享

    系列文章目录 这几年相信大家知道STM32系列的芯片价格翻倍的涨 自己玩都快玩不起了 要是用于生产 这得多掏多少钱 所以现在大家都选择了国产芯片 哈哈不能说多差吧 价格你没得说 这是我的一次APM32代替STM32的经历 你是不是也会遇到这
  • java学习笔记8

    Comparable Comparable表示可被排序的 实现该接口的类的对象自动拥有排序功能 对Integer的排序 package com Factory import java util public class Test21 pub
  • clk为什么要用posedge,而不用negedge

    Verilog中典型的counter逻辑是这样的 always posedge clk or negedge reset begin if reset 1 b0 reg inst1 lt 8 d0 else if clk 1 b1 reg
  • 解决BMap is not defined?

    除了上篇文章在配置文件中修改之外 还有其他方法 先重复第一种 module exports entry src main js externals BMap BMap 然后在目标vue文件中调用 import BMap from BMap
  • docker国内镜像源

    Docker中国区官方镜像 https registry docker cn com 网易 http hub mirror c 163 com ustc https docker mirrors ustc edu cn 中国科技大学 htt
  • ESLint: The array literal notation [] is preferable. (no-array-constructor)

    为什么80 的码农都做不了架构师 gt gt gt var xx new Array 改为 var xx 找到一篇不错的文章 总结的不错 https blog csdn net zcfzfc123456789 article details
  • python爬虫-异步爬虫

    注 本文章为学习过程中对知识点的记录 供自己复习使用 也给大家做个参考 如有错误 麻烦指出 大家共同探讨 互相进步 借鉴出处 该文章的路线和主要内容 崔庆才 第2版 python3网络爬虫开发实战 前言 爬虫属于IO密集型任务 例如使用re
  • Windows 命令行

    Windows命令行 1 echo 显示内容 echo 内容 类似log echo on off 打开 关闭回写 echo off 内容 pause 写pause时才进行输出 2 cd 进入目录 cd 内容 path路径 进入到对应的文件夹