管道 | 特殊的重定向
前一个命令的输出作为后一个命令的输入;
管道连接的命令数没有限制;
who|wc−l统计用户数 ps |sort|more 按序显示当前进程名
字符:具有特定作用的特殊字符
,<,>>,<< 重定向
符号 | 功能 |
---|---|
> | 输出重定向 |
> |
输出重定向并追加到文件; |
< | 输入重定向; |
<< | 输入重定向并追加到文件; |
” 字符串定界符
字符串一般放在一对双引号中间,防止变量
被空格分开,同时又允许$扩展
通配符
符号 | 功能 |
---|---|
* | 匹配零个或多个字符 |
? | 匹配任意单个字符 |
[…] | 匹配方括号内包含任何一个字符 |
[^…] | 匹配不包含在方括号内的任何一个字符 |
{s1,s2,…,sn } | 匹配集合中任意一个字符串 |
命令替换
command
, $(command):替换为command的输出
$echo the date is `date`
the date is 2017年 12月 13日 星期三 21:26:35 CST
$echo there are$(who|wc -l)users on the system
there are1users on the system
命令序列和组合命令
符号 | 功能 |
---|---|
; | 组成命令序列 |
(…..) | 组合命令 |
$date;pwd;ls
$date>date.txt;ls;pwd>pwd.txt
(date;ls;pwd)>out.txt
条件执行序列
符号 | 功能 |
---|---|
或 | 如果前一个命令执行失败,执行下一个命令 |
&& | 如果前一个命令执行成功,执行下一个命令 |
(或代表 ||)
& 后台运行
符号 | 功能 |
---|---|
command & | 后台运行,你关掉终端会停止运行 |
nohup command & | 后台运行,你关掉终端也会继续运行 |
shell脚本
一个shell脚本可以包含:
(1)命令
(2)位置参数
(3)变量及表达式
(4)结构控制语句
(5)函数
(6)其他shell脚本
Shell脚本常用命令
符号 | 功能 |
---|---|
break | 跳出一层循环 |
: | 空命令 |
continue | 跳出一次循环 |
. | 在当前shell中执行命令 |
echo | 输出字符串(带换行符) |
eval | 对参数求值 |
exit n | 以退出码结束脚本运行(0表示运行成功) |
export | 声明环境变量 |
printf | 输出字符串(可指定格式) |
$((…)) | 表达式求值 |
return | 函数返回(默认返回最后一条命令的退出码) |
set | 为shell设置参数变量 |
shift | 除了$0的所有参数变量左移一位 |
find | 搜索文件 |
grep | 过滤字符串 |
正则表达式
如何