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, 改变命令窗口的标题
    windows -- dos命令_第1张图片
  • 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 打开应用程序  单词有空格 加引号
start c:/"programms files"/xx.exe

rem 打开网址
start www.baidu.com

rem 打开有空格的目录
start "" "cc dd"
  • call 程序的互相调用,bat以ANSI编码
@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 删除文件

 

特殊命令符

  • 管道 | ,将结果向后传递
:: 查询包含指定内容的文件
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, 测试网络连通性

你可能感兴趣的:(windows系统,windows,bash,linux)