命令行学习(一)基础命令

多数前端工具,只提供命令行界面,没有图形界面,实际上,先有的命令行,才有的图形界面
命令行释义:https://explainshell.com/explain

1. ~ / . .. $ 的意思

  • ~ 表示用户目录
  • / 表示盘符 cd /d 进入d盘 ,也表示绝对路径
  • . 当前目录
  • .. 上级目录
  • $ 表示可以输入目录,没有实际意义

2. 常用命令

  • cd a , 进入a目录 或 cd ./a , cd ./a/ ,cd a/ ; cd /e 进入E盘

  • cd .. 转到上级目录 或 cd ../

  • pwd (print working directory )命令显示整个目录 绝对路径

  • mkdir [目录名] (make directory) : 新建目录

  • mkdir -p( parents ) [目录路径] :新建包含路径的目录, 如果有特殊字符(空格),需要加引号 mkdir "el le" ps: mkdir -p lib/app/demo/le1

  • whoami 用户名

  • whois 查看某个域名拥有着的身份

  • ls [目录]: (list) 显示该目录,不加显示当前目录

  • ls -a 显示点开头的隐藏文件

  • ls -l(long) 显示更多的信息 ,同 ll

  • ls -al (all long)

  • cp [源路径] [目标路径]:(copy) 复制文件

  • cp -r(copy --recursive) .. 复制目录

  • mv [源路径] [目标路径]: (move)移动文件,可进行不同目录内文件的移动,当目标路径不存在时,可以用作重命名

  • rm (remove): 删除文件

  • rm -rf [目录/路径]: (remove --recursive递归的 --force 强制) 删除目录

  • rm命令删除的文件不可恢复

  • cat word.txt 查看文件内容

  • history 查看历史操作

  • start [文件名] 打开文件

  • start . 打开当前目录文件夹 可输入路径指定打开某文件夹

  • echo aaaa > hello.txt 创建hello.text 并将xxxx写入文件

  • echo bbbb >> hello.txt 将cccc添加在文件后面

  • echo cccc >! hello.txt 强制重写hello.txt

  • touch hello.txt 改变文件更新时间,如果没有就复制

  • ln -s [真实文件] [链接]: (link) 建立软连接

  • cd ~/local; pwd 分号分隔两条命令,同时执行
    <meta charset="utf-8">

<article class="_2rhmJa">

批处理(Batch),也称为批处理脚本。顾名思义,批处理就是对某对象进行批量的处理,通常被认为是一种简化的脚本语言,它应用于DOS和Windows系统中。
批处理文件的扩展名为bat 。

查看命令的帮助信息
命令 /?

关闭单行回显
@ 命令

从下一行开始关闭回显
echo off

从本行开始关闭回显
@echo off

从下一行开始打开回显
echo on

显示当前是 echo off 状态还是 echo on 状态
echo

打印一个空行出来
echo.

打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当前回显设置。
echo XXXXX

获取当前盘符
echo %~d0

获取当前路径
echo %cd%

获取BAT本身的完整路径和文件名
echo %0

当前bat文件路径
echo %~dp0

当前bat文件短路径
echo %~sdp0

每个命令运行结束,可以用这个命令行格式查看返回码 默认值为0,一般命令执行出错会设 errorlevel 为1
echo %errorlevel%

显示日期星期及时间精确到毫秒
echo %date%%time% 2019/08/08 周四14:20:26.00
echo %date:~0,4%年 %date:~5,2%月 %date:~8,2%日 %time:~0,8% 2019年 08月 08日 14:20:49

随机整数,介于0~32767
echo %errorlevel%

暂停,防止批处理完成后直接退出,执行后会在CMD中显示“情按任意键继续......”
pause

删除一个或数个文件 names 指定一个或多个文件或者目录列表。 通配符可用来删除多个文件。 如果指定了一个目录,该目录中的所有文件都会被删除。
  /P 删除每一个文件之前提示确认。
  /F 强制删除只读文件。
  /S 删除所有子目录中的指定的文件。
  /Q 安静模式。删除全局通配符时,不要求确认
DEL [/P] [/F] [/S] [/Q] names

控制窗口大小 lines表示长 cols表示宽
@mode con lines=18 cols=55

进入目录
cd XXXXX

创建目录 带空格或是特殊符号用双引号括起来
md XXXXX

删除目录文件
/S 除目录本身外,还将删除指定目录下的所有子目录和文件。用于删除目录树。
/Q 安静模式,带 /S 删除目录树时不要求确认
rd [/S] [/Q] XXXXX
emdir [/S] [/Q] XXXXX

显示文件夹内容
dir XXXXX /a/b/p/s

以图形显示驱动器或路径的文件夹结构 仅展示文件夹
tree

显示当前系统path设置
path

复制文件和目录树
/i 没有文件夹自动新建,否则会有询问
/S 复制目录和子目录,不包括空目录。
/E 复制目录和子目录,包括空目录。
/Y 取消提示以确认要覆盖
copy 原文件 目标 [/s/e/i/y]

复制文件(夹)
xcopy 原文件 目标 [/A | /M] [/D[:date]] [/P] [/S [/E]] [/V] [/W] [/C] [/I] [/Q] [/F] [/L]
[/G] [/H] [/R] [/T] [/U] [/K] [/N] [/O] [/X] [/Y] [/-Y] [/Z]

显示文件内容
type XXXXX

移动文件(夹)
/Y 取消确认改写一个现有目标文件的提示。
/-Y 对确认改写一个现有目标文件发出提示。
MOVE [/Y | /-Y] 位置和名称[,...] 新位置

要重命名一个目录
MOVE [/Y | /-Y] 路径 新路径

重命名
REN 路径 新路径

替换文件
/A 把新文件加入目标目录。不能和/S 或 /U 命令行开关搭配使用。
/P 替换文件或加入源文件之前会先提示您进行确认。
/R 替换只读文件以及未受保护的文件。
/S 替换目标目录中所有子目录的文件。不能与 /A 命令开关搭配使用。
/W 等您插入磁盘以后再运行。
/U 只会替换或更新比源文件日期早的文件。不能与 /A 命令行开关搭配使用。
replace 路径 新路径 [/P] [/R] [/S] [/W] [/U]

显示或更改文件属性

  • 清除属性。
    R 只读文件属性。
    A 存档文件属性。
    S 系统文件属性。
    H 隐藏文件属性。
    /S 处理当前文件夹及其子文件夹中的匹配文件。
    /D 也处理文件夹。
    attrib [R|-R] [A|-A] [S|-S] [H|-H] XXXXX [/S [/D]]

在文件中搜索字符串
/V 显示所有未包含指定字符串的行。
/C 仅显示包含字符串的行数。
/N 显示行号。
/I 搜索字符串时忽略大小写。
/OFF[LINE] 不要跳过具有脱机属性集的文件。
FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] "string" 路径[ ...]]

字符串查找增强
/B 在一行的开始配对模式。
/E 在一行的结尾配对模式。
/L 按字使用搜索字符串。
/R 将搜索字符串作为一般表达式使用。
/S 在当前目录和所有子目录中搜索匹配文件。
/I 指定搜索不分大小写。
/X 打印完全匹配的行。
/V 只打印不包含匹配的行。
/N 在匹配的每行前打印行数。
/M 如果文件含有匹配项,只打印其文件名。
/O 在每个匹配行前打印字符偏移量。
/P 忽略有不可打印字符的文件。
/OFF[LINE] 不跳过带有脱机属性集的文件。
/A:attr 指定有十六进位数字的颜色属性。请见 "color /?"
/F:file 从指定文件读文件列表 (/ 代表控制台)。
/C:string 使用指定字符串作为文字搜索字符串。
/G:file 从指定的文件获得搜索字符串。 (/ 代表控制台)。
/D:dir 查找以分号为分隔符的目录列表
strings 要查找的文字。
FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/F:file]
[/C:string] [/G:file] [/D:dir list] [/A:color attributes] [/OFF[LINE]]
strings [路径[ ...]]

文件比较
/A ASCII码比较模式; 
/B 二进制比较模式; 
/C 将大小写字符看成是相同的字符。 
/N 在ASCII码比较方式下,显示相异处的行号。
FC 路径 路径 [/A][/B][/C][/N]

清屏
cls

设置cmd窗口的标题
title XXXXX

显示系统版本
ver

bat暂停10秒后再执行
timeout /t 10

注释命令 注释行不执行操作
rem 和 ::

逐屏显示
more XXXXX

顺序执行多条命令,而不管命令是否执行成功
&

顺序执行多条命令,当碰到执行出错的命令后将不执行后面的命令
&&

顺序执行多条命令,当碰到执行正确的命令后将不执行后面的命令
||

管道命令 先执行前面的命令,对其输出的结果执行后面的命令
|

重定向符, 意思是传递并且覆盖,它所起的作用是将运行的结果传递到后面的范围(后边可以是文件,也可以是默认的系统控制台,即命令提示符)
>

重定向符 将命令的输出结果追加到其后面的设备中去。这个符号的作用和>有点类似,但他们是有区别的 >>是传递并在文件的末尾追加,而>是覆盖。用法同>一样的。
>>

显示并写入文件中 会覆盖
dir>list.txt

屏幕上不显示文件内容,转向输出到打印机
type c:test.txt >prn

执行批处理程序中的条件处理
/i 不区分大小写
if not exist C:\Users\sulong\Desktop\aaaa.bat echo 不存在aaaa.bat文件
if exist c:test.bat ( echo 存在c:test.bat ) else ( echo 不存在c:test.bat )

设置变量

set p=aa1bb1aa2bb2
echo %p:~6%     显示变量p中第6个字符以后的所有字符
echo %p:~0,-2%  显示除了最后2个字符以外的其它字符
echo %p:aa=c%   用c替换变量p中所有的aa 
echo %p:aa=%    将变量p中的所有aa字符串置换为空,即显示1bb12bb2
echo %p:*bb=c%  第一个bb及其之前的所有字符被替换为c,即显示c1aa2bb2
set p=%p:*bb=c% 设置变量p,赋值为 %p:*bb=c% ,即c1aa2bb2
set /a p=39     设置p为数值型变量,值为39
set /a p=39/10  支持运算符,有小数时用去尾法,39/10=3.9,去尾得3,p=3
set /a p=p/10   用 /a 参数时,在 = 后面的变量可以不加%直接引用
set /a p=”1&0″  ”与”运算,要加引号。其它支持的运算符参见set/?
set p=          取消p变量
set /p p=请输入 屏幕上显示”请输入”,并会将输入的字符串赋值给变量p

批处理中调用外部程序的命令,否则等外部程序完成后才继续执行剩下的指令
/i 将 Cmd.exe 启动环境传送到新的“命令提示符”窗口
/min 启动新的最小化窗口
/max 启动新的最大化窗口
/separate 在单独的内存空间启动 16 位程序
/shared 在共享的内存空间启动 16 位程序
/low 以空闲优先级启动应用程序
/normal 以一般优先级启动应用程序
/high 以高优先级启动应用程序
/realtime 以实时优先级启动应用程序
/abovenormal 以超出常规优先级的方式启动应用程序
/belownormal 以低出常规优先级的方式启动应用程序
/wait 启动应用程序,并等待其结束
start 参数 目录 文件名

批处理中调用另外一个批处理的命令,否则剩下的批处理指令将不会被执行 有时有的应用程序用start调用出错的,也可以call调用
call

循环命令
for

批处理打开程序窗口最大化
start /max "" "C:\Users\sulong\AppData\Local\Postman\app-5.3.2\Postman.exe"

测试IP连接
-n count 发送count指定的Echo数据包数,定义向目标IP发送数据包的次数,默认为4次
-w timeout 指定超时间隔,单位为毫秒
ping

查看IP配置
/all 显示所有适配器的完整 TCP/IP 配置信息
ipconfig

解析地址
-a参数 或-g参数 用于查看高速缓存中的所有项目
arp

关闭或重启计算机
shutdown

关闭指定进程
taskkill

延迟变量 环境变量延迟扩展
set var=test
echo %var%

批处理文件bat脚本实现代码自动提交和项目部署

@echo off
echo "-------Begin-------"
git status
set /p msg=请输入提交注释:
git add .
git commit -m %msg%
git pull
git push
echo 推送成功:【%msg%】
echo "--------End!--------"
pause

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,463评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,868评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,213评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,666评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,759评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,725评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,716评论 3 415
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,484评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,928评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,233评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,393评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,073评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,718评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,308评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,538评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,338评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,260评论 2 352

推荐阅读更多精彩内容

  • Git Bash 和 cmd 都提供了命令行,操作方便非常实用,我们以 Git Bash 为例来总结一下几个常用的...
    养乐多__阅读 2,026评论 0 2
  • 一、基础语法: 1.批处理文件是一个“.bat”结尾的文本文件,这个文件的每一行都是一条DOS命令。可以使用任何文...
    蒋_Sir阅读 9,138评论 1 4
  • 概述 命令行操作会解放我们的鼠标,让我们更加流畅的进行我们想要的操作 文件与文件夹(目录) ~ ==> 用户目录 ...
    bowen_wu阅读 494评论 0 0
  • 1.Why i.命令行是什么 先有命令行,后有的图形界面。最开始的游戏也是在命令行上的,如图: 你可能以为命令行是...
    ScottWalker阅读 631评论 0 1
  • 命令行是什么?(why) 为什么要学命令行?(what) 怎么学命令行?(how) Vim及学习资源 命令行技巧 ...
    xyyojl阅读 720评论 0 1