windows -- dos命令

内部命令

操作系统的内部命令。
win + r, 输入cmd 打开命令窗口;
如:

  • dir,查看当前目录下的内容
  • cd,切换目录
  • copy, 拷贝
  • echo,打印

变量

windows下的环境变量,使用set设置、打印、删除;
windows 下的所有的命令都可以放入bat批处理文件,正如linux下的命令都可以放入shell脚本中。

# 创建变量
set age=23
# 打印
set age
# 删除变量
set age=

# 帮助
set /?
# 查看指定环境变量的值
set xxx
set pythonpath # 不区分大小写
# 表达式
set /a 3+5
# 等待用户的输入
set /p addr=提示:   

案例:让用户输入一个数值,打印出用户输入的内容。

# test.bat
:: 关闭回显  注释
@echo off
:: 等待用户的输入
set /p value=请输入一个数值:
:: 表达式计算
set /a result=value/2

:: 输出打印
echo 计算结果:%result% 

:: 暂停  防止窗口退出
pause > null

 

常用命令

  • title, 改变命令窗口的标题
    在这里插入图片描述
  • mode, 改变命令窗口的模式; mode 100,80; 设置宽高
  • color, 改变背景色、字体色
  • hostname 查看当前主机名;
  • ipconfig 查看ip
  • ping ip/domain 测试网络连通性
  • :: 和 rem 均表示注释内容
  • exit 表示退出
  • goto 跳转
goto part2
:part1
echo this is part1
:part2
echo this is part2

  • start 打开目录、文件、网址、应用程序等
rem 打开目录  不区分大小写
start e:/dl

rem 打开文件
start e:/a.txt

rem 打开exe应用程序  单词有空格 加双引号
start c:/"programms files"/xx.exe

rem 打开网址
start www.baidu.com

rem 打开有空格的目录
start "" "cc dd"
  • call 程序的互相调用,bat以ANSI/gbk编码且使用绝对路径
@echo off
rem  调用子程序

echo 我是主程序

rem 调用其他程序,使用绝对路径
call e:/e.bat

pause > null
  • sort 排序 ;
rem 升序
sort a.txt

rem 降序 
sort /r a.txt > result.txt  2>error.txt  :: 2表示错误输出 

rem 重定向   写入
rem 追加重定向 >>  追加写入
rem  <   读取文件内容
  • type 查看文件内容;
  • shutdown 关闭计算机
shutdown /?   帮助
:: 一分钟后重启
shutdown /r /t 60  
:: 取消关闭
shutdown /a
:: 关闭计算机
shutdown /s
  • telnet 远程登录
telnet ip port
  • mkdir md 创建目录

  • rmdir 删除目录

  • del /q file 删除文件

  • tasklist 查看所有进程
    tasklist | findstr conhost.exe

  • taskkill 杀掉指定的进程
    taskkill /im pname
    taskkill /pid pid /f 根据pid强制杀掉进程

  • net 管理系统服务
    net start ServerName
    net stop ServerName

  • sc 注册服务或者删除服务等;
    sc create MyFlask binpath= d:/lauf/bin/fserver.exe start= auto displayname= MyFlask
    sc delete MyFlask

  • netstat 查看网络连接
    netstat -ano | findstr TCP
     

特殊命令符

  • 管道 | ,将结果向后传递
:: 查询包含指定内容的文件
dir | find ".py"
netstat -ano | findstr TCP
  • 组合& ,所有命令均执行
  • 组合 &&, 前一个命令执行失败,后面不再执行
  • 组合 || 前一个命令失败,则再执行后面的
  • ()表示代码块
    分支语句综合:
@echo off
if exist e:/e1.bat  (

echo 存在指定的文件

) else (

type aa.txt && echo 创建文件成功

)

pause > null

综合案例

获取当前目录下的xxxx.whl,使用pip自动安装该python二进制文件

  • 制作python whl文件
# 编写好python 文件  my_module.py
# 发布python模块,编辑setup.py
from setuptools import setup


setup(
	name="my_module",
	version="1.0",
	author="laufing",
	py_modules=["my_module", "other_module"]
)

命令行下执行:python setup.py bdist_wheel,在当前目录下会生成dist目录,里面就有whl二进制文件。

  • for循环,命令行下使用% ; 批处理中使用%%
::命令行下操作 使用单个%   bat中操作使用%%
for /f "tokens=1,2,3* delims= " %i in (a.txt) do @echo %i %j %k %l
:: 文件a.txt中的一行 根据delims分割符 分割后的第1 2 3 及以后的部分,分别赋值给
:: i j k l  变量连续
  • 单引号表字符;双引号表整体,同shell

案例实现: 编写如下bat文件

@echo off
cd dist
:: 获取当前目录下的whl二进制文件
dir | findstr .whl > target.txt

:: bat中使用%%     * 表示剩余的部分   /f 表示文件
for /f "tokens=1,2,3,* delims= " %%i in (target.txt) do (
:: 安装
pip install %%l --force-reinstall 
)
:: 删除临时文件
del target.txt

pause 

外部命令

它是特定目录下的一个exe程序,如C:\Windows\System32下的exe程序
mstsc, 远程连接
ping, 测试网络连通性

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

laufing

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值