shell操作系统

一、概述

定义

磁盘操作系统(Disk Operating System):顾名思义,是一种面向磁盘的系统软件

组成

  • 引导程序:由格式化程序直接写入磁盘扇区。
  • 基本输入/输出管理程序。。
  • 文件管理和系统功能调用程序。
  • 命令处理程序。
  • 各种外部命令:完成各种功能的可执行文件。

二、发展史

三、操作命令

磁盘操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
fdisk
参数:
/mbr
列:重建主引导记录(可洗掉还原精灵)
EXP.fdisk /mbr

format
参数:
/q 快速格式化
/u 不可恢复
/autotest 不提示
/s 创建MS-shell引导盘
列:自动快速格式化C盘
EXP.format c: /q /u /autotest

目录操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

内部命令:md
格式:md 创建位置 目录名
列:在C盘下创建一个test目录
md c:\test


内部命令:rd 从指定磁盘删除目录
格式:rd 路径名
列:从c盘下删除test目录
rd c:\test
外部命令:deltree 将整个目录及其下属子目录和文件删除
格式:deltree [盘符:]


切换路径命令:cd
格式:cd 路径
列:返回上一级目录
cd ..


内部命令:dir 显示磁盘目录的内容
格式:dir [盘符:][路径][文件名]
外部命令:tree 显示指定驱动器上所有目录路径和这些目录下的所有文件名

文件操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

命令:echo
格式:echo > 文件名


命令:del
格式:del 文件名


命令:type
格式:

复制文件
命令:copy
格式:

移动文件
命令:move
格式:

属性命令

1
2
3
4
5
6
7
8
9
10
修改属性
命令:attrib
格式:attrib +/-4中属性 文件或目录名
参数:
+ 设置属性
- 清除属性
R 只读文件属性
A 存档文件属性
S 系统文件属性
H 隐藏文件属性

网络命令

1
2
3
4
5
查看IP地址
命令:ipconfig

检查网络通信
命令:ping

其他命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
管道符
命令:| 相当于存储左边命令的结果存储进管道
列:在test目录下中查找log目录
dir /test | find "log"

通配符
命令:*
列:在当前目录下删除所有以.txt结尾的文件
del "*.txt"

重定向符
命令:>和>>
列:将目录写入a.txt文件中
dir > a.txt

提示帮助
命令:help

树状图
命令:tree

日期
命令:date

时间
命令:time

显示系统版本信息
命令:ver

列举当前电脑上所有的进程
命令:tasklist

查询字符串
命令:findstr

杀进程
命令:taskkill

批处理(bat脚本)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
创建批处理文件步骤:
1.新建一个文本文档。
2.在文本中输入shell命令。
3.修改文档的后缀名为.bat.
4.双击运行

输出
命令:echo

关闭显示盘符和不显示命令执行过程
命令: @echo off

获取输入参数
命令:%参数名

给变量赋值
命令:set 变量名=变量值
参数:/a:算数运算 /p:获取文件输入流

获取变量值
命令:%变量名%

暂停:
pause

注释:
rem

条件判断:
格式:if [not] exsit (命令) else (命令)

循环:
格式:for /L %变量% in (start/step/end) do (命令)

算数运算:set /a
格式:set /a sum = 1+3

列子:demo.bat

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
@echo off
rem 定义变量
set int=123
set string=aabbcc

rem 定义变量,值为参数。%1表示接收脚本执行时传递进来的第一个,%2为第二个
set name=%1
set pass=%2

rem 获取输入流,读出demo01.txt内容,赋值给变量age
set /p age=<demo01.txt

rem 算数运算
set /a sum=1+19000

rem 把变量sum的值输出进demo01.txt
echo %sum%>demo01.txt

rem 往demo01.txt里面添加分隔符
echo ------------->>demo01.txt

rem 查询ip地址,并追加进demo01.txt
ipconfig >>demo01.txt

echo ------------->>demo01.txt

rem 显示当前路径下的文件和文件夹,并追加进demo01.txt
dir >>demo01.txt

echo ------------->>demo01.txt
rem 显示当前路径下包含demo字符串的信息,并追加进demo01.txt
dir | findstr demo>>demo01.txt

rem 输出变量的值
echo %int% %string% %name% %pass% %age%

rem 停止
pause

执行:可以双击执行,但是不能给参数变量赋值。还可以打开cmd窗口找到demo.bat 路径下,执行 demo.bat 张三 12346 回车