网站后端做留言板功能,外链网盘,网站的目录结构,互联网行业 英文目录
shell的基本命令
shell - 贝壳 外在保护工具
用户、shell、内核、硬件之间的关系
解析器的分类#xff1a;
shell命令格式
history -历史记录查询
修改环境变量的值#xff1a;
shell中的特殊字符
通配符
管道 |
输入输出重定向
命令置换符 shell的基本命… 目录
shell的基本命令
shell - 贝壳 外在保护工具
用户、shell、内核、硬件之间的关系
解析器的分类
shell命令格式
history -历史记录查询
修改环境变量的值
shell中的特殊字符
通配符
管道 |
输入输出重定向
命令置换符 shell的基本命令
shell - 贝壳 外在保护工具
shell是命令解析器 用户、shell、内核、硬件之间的关系
用户在命令行提示符下输入命令文本开始与shell进行交互。
接着shell将用户的命令或者按键转换成内核能够理解的指令
控制操作系统作出响应直到控制相关的硬件设备。
然后将输出结果通过shell提交给用户 解析器的分类
Bourne Shell简称shBourne Shell由ATT贝尔实验室的S.R.Bourne开发也因开发者的姓名而得名。它是Unix的第一个Shell程序早已成为工业标准。目前几乎所有的Linux系统都支持它。不过Bourne Shell的作业控制功能薄弱且不支持别名与历史记录等功能。目前大多操作系统是将其作为应急Shell使用。
C Shell简称cshC Shell由加利福尼亚大学伯克利分校开发。最初开发的目的是改进Bourne Shell的一些缺点并使Shell脚本的编程风格类似于C语言因而受到广大C程序员的拥护。不过C Shell的健壮性不如Bourne Shell。
Korn Shell简称kshKorn Shell由David Korn开发解决了Bourne Shell的用户交互问题并克服了C Shell的脚本编程怪癖的缺点。Korn Shell的缺点是需要许可证这导致它应用范围不如Bourne Shell广泛。
Bourne Again Shell简称bashBourne Again Shell由ATT贝尔实验室开发是Bourne Shell的增强版。随着几年的不断完善已经成为最流行的Shell。它包括了早期的Bourne Shell和Korn Shell的原始功能以及某些C Shell脚本语言的特性。此外它还具有以下特点能够提供环境变量以配置用户Shell环境支持历史记录内置算术功能支持通配符表达式将常用命令内置简化。 shell命令格式
通常一条命令包含三个要素命令名称、选项、参数。其中命令名称是必须的选项和参数根据实际情况进行填写
Command [-Options] Argument1 Argument1 …… Command shell命令名称严格区分大小写 Options shell命令选项每一个参数都需要添加-进行引导 -表示短格式--表示长格式 Argument1 shell命令参数一条命令的参数大于等于0个且多个参数的情况需要利用空格进行隔开
格式命令名称 [选项] [参数] ......
细节0
1. 一条命令的三要素之间用空格隔开
2. 若一行要书写多个命令需要使用分号( ;)进行隔开
3. 如果一条命令不能再一行内写完需要在行尾使用反斜杠 (\) 表明该命令未结束 history -历史记录查询
直接 history显示HISTSIZE条历史记录
history n-只显示n条命令
echo $HISTSIZE-- 在终端显示环境变量HISTSIZE的值
家目录下隐藏文件 .bash_history(vi /.bash_history)保存历史记录的。HISTFILESIZE条
终端关闭终端上执行的命令刷新到文件中 修改环境变量的值
export HISTSIZE20临时修改只有在本次打开的终端有效
家目录文件 .bashrc中修改就是永久修改修改完生效从新打开的终端生效 shell中的特殊字符
通配符
当用户需要用命令处理一组文件例如 file1.txt、file2.txt、file3.txt、file4.txt ……用户不必输入所有文件名。可以使用shell通配符。 通配符 含义 * 匹配任意长度的字符 ? 匹配一个长度的字符 [...] 匹配其中指定的一个字符 [-] 匹配指定一个字符范围 [^...] 除了其中指定的字符均可以
实例
● 用 file_*.txt匹配 file_aa.txt、file_bb.txt、file_abcd.txt 能匹配到的file1_cc.txt则匹配不到(命令后面 单独使用 * 表示全部如rm * 表示删除全部文件)
● 用 file_?.txt匹配 file_1.txt、file_2.txt、file_3.txt是可以匹配到的file_11.txt则匹配不到
● 用 file_[abc].txt 只能匹配 file_a.txt、file_b.txt、file_c.txt
● 用 file_[a-c].txt 能匹配 file_a.txt、file_b.txt 直到 file_c.txt
新建多个文件夹touch file_{*..*}.txt
● 用 file_[^abc].txt 除了 file_a.txt、file_b.txt、file_c.txt 的其他文件
管道 |
前一个命令的输出作为后一个命令输入
cat hello.c | wc -l--- 将cat 输出到终端的内容作为 wc -l的输入计算行数 补充 wc -l 文件名文件行数
wc -c 文件名文件字符个数
wc -m 文件名计算文件字节大小
wc -w 文件名文件单词个数 输入输出重定向
命令 file将file 作为输出源file 文件不存在创建覆盖
命令 file如果文件不存在则创建如果文件中存在内容则会追加
命令 file 或者 命令 2 file将由命令产生的错误输入到 file
输入重定向 命令置换符
将一个命令的输出作为另一个命令的参数----------将命令转译出来 ·‘