变量
配置方法
echo 会有原来的特性
单引号里面的都为字符串
6.可以用转义字符\ 吧特殊符号变为一般符号
7.命令中如果需要其他命令提供的信息,可以用反单引号
8.变量要在子进程进行,需要用export将变量变成环境变量
变量读取
read [-pt] variable
-p后面可以接提示符
-t后面可以接等待的描述,不会一直等待用户
decalrt 生命变量的类型
格式 : declare [-aixr] variable
-a:将后面名为variable的变量定义为数组类型
-i 后面名为variable的变量定义为数字类型
-x将变量变为环境变量
-r变为只读类型,不能更改,不能重新设置
eg : declare -i sum=100+100+100
文件系统限制 ulimit
格式: ulimit [-SHacdfltu] 配额
-H hardlimit 严格限制,必定不能超过这个限额的数值
-S 警告设置,可超过这个设置值,但是超过就会有警告信息,soft 会小于hard
-a :后面不接任何参数,列出所有限制额度
-c:某些进程发生错误,系统可能会将该进程在内存中的信息携程文件
-f:此shell可以创建的最大文件容量,一般可能设置为2gb,单位kb
-d:进程可使用的最大断裂内存
-l:用于锁定lock的内存量
-t:可以使用的最大cpu时间
-u:单一用户可以使用的最大进程数量
变量内容的删除替代和替换
变量出了可以直接设置修改原本内容,还可以微调
历史命令history
alias h='history' 设置命令别名
history [n]
history [-c]
history [-raw] histfiles
n 数字,是要列出最近的n条命令的意思
-C 将目前的shell中所有的history 内容全部消除
-a 将目前新增的history 命令新增入 histfiles 中,如果没有,家histfiles
-r 将histfiles 的内容读取到这个shell的history记忆中
-w 将目前的history的记忆写入到histfiles中
!number
!command
!!
说明:
number :执行第几条命令的意思,比如!66执行弟66条命令
command:由最近的命令向前搜寻命令串开头为command的命令,并执行
!!:就是执行上一条命令
组合按键
ctrl + c 终止目前命令
ctrl + d 输入结束,例如邮件结束的时候
ctrl + m 就是enter
ctrl + s 暂停屏幕的输出
ctrl + q 恢复屏幕的输出
ctrl + U 提示符下,将整行命令产出
ctrl + z 暂停目前的命令
通配符
- 代表0到无穷多个任意字符
?代表一定有一个任意字符
[] 同样代表一定有一个在中括号内的字符
[-] 如果有减号在括号内的时候,代表在编码顺序内的所有字符 [0-9] 就代表0
到9的所有数字
[^] 如果中括号内的第一个字符指数符号位 ^ 表示原想选择 [^abc] 表示一定有一个,只要是非abc的字符就接受
其他特殊符号
# 注释符号
\ 转义符号
| 管道符号,分割两个管道命令的界定
; 连续命令执行的分隔符
~ 用户主文件夹
$ 使用变量前导符,变量之前需要加的变量替代值
& 作业控制,将命令变成背景下工作
! 逻辑意义上的非
/ 目录符号,路径分隔的符号
, >> 输出流重定向,输入导向,分别是替换和累加
<,<< 输入导向,
‘’ 单引号不具有变量置换的功能
“” 双引号具有变量置换的功能
数据导向
1> 覆盖的方法吧正确的数据输出到制定的文件或者设备上,可以是变量
1>> 累加的方法吧正确的数据输出到制定的文件或者设备上,可以是变量
2> 覆盖的方法吧错误的数据输出到制定的文件或者设备上,可以是变量
2>> 累加的方法吧错误的数据输出到制定的文件或者设备上,可以是变量
$? 命令回传码 &&或||
cmd1&&cmd2 cmd1执行完毕正确执行才会执行cmd2
cmd1 正确执行,cmd2不执行,cmd1执行完毕为错误,执行cmd2
网友评论