1 ;分号

  格式:命令1;命令2;命令3

  说明:命令之间用分号隔开是顺序执行,命令之间没有任何逻辑关系

2  &&  逻辑与

  格式:命令1 && 命令2

  说明:命令1正确执行,命令2才会执行;命令1执行失败,则命令2不会执行

3  || 逻辑或

  格式:命令1 || 命令2

  说明:命令1执行错误,则命令2才会执行;命令1执行正确,则命令2不会执行

4  复制磁盘

  dd if=输入文件 of=输出文件 bs=字节数  count=个数

  说明:if->输入文件 指定源文件或源设备

      of-> 输出文件,指定目标文件或目标设备

      bs->字节数 指定一次输入/输出多少字节,即这些字节看做一个数据块

5 判断命令是否执行正确

  命令 && echo yes || echo no

  说明:命令执行正确无误,输出yes,执行有错误输出no

6 | 管道符

  格式:命令1 | 命令2

  作用:命令1的正确输出作为命令2的操作对象,要求命令1必须有正确输出

7 grep [选项] '搜索内容' 文件名

  作用:搜索

  参数:

  -i 忽略大小写

  -n 输出行号

  -v 反向查找

  --color=auto 颜色显示

  通配符及其他特殊符号

  ?->匹配一个任意字符

  *->匹配0个或多个任意字符

  []->匹配中括号中任意一个字符 例如:[abc] 表示匹配a或者b或者c

  [-]->代表一个范围匹配范围中的任意一个 例如:[1-9] 匹配1-9中的任意一个数字

  [^]->匹配不是中括号中的一个字符 例如:[^0-9] 匹配一个不是数字的字符

8 bash中其他的特殊字符

  '' 单引号  单引号中的任何特殊字符均没有意义

  "" 双引号  双引号中除 $ ` \ 外其他的特殊字符都没有特殊意义 ,$ 调用变量 `引用系统命令 \转移字符

  `` 反引号  反引号括起来的内容是系统命令,会先执行系统命令

  $() 和反引号一样,用来引用系统命令

  $ 取变量的值,不带$是变量  带上$是去变量的值

9 变量

  变量的默认类型都是字符串类型

  变量用=连接,=两侧不能有空格,如果变量值中有空格需要用引号引起来

  name=$(date) 将当前时间赋值给变量name

  环境变量名建议大写,便于区分

10 变量分类

  用户自定义变量

  环境变量 ->是和系统操作环境相关的数据

  位置参数变量 ->这种变量主要用来向脚本中传递参数和数据的,变量名不能自定义,变量作用是固定的

  预定义变量 ->是bash中已经定义好的变量,变量名不能自定义,变量作用也是固定的

  其中位置参数变量也属于预定义变量

11 set 

  作用:查看系统中的所有变量

12 unset 变量名

  作用:删除变量,删除环境变量也用这个命令

13 pstree

  作用:查看系统中使用的shell的层级树

14 设置环境变量

  export 变量名=变量值 设定环境变量 例如:export age=18  添加一个环境变量age 并赋值为18

  name='zhaolili'  添加本地变量并赋值为 zhaolili

  export name 这样就把本地变量name变成了环境变量

15 env

  作用:查询环境变量

16 环境变量PS1

  作用:定义系统提示符的变量

  参数:

  \d 显示日期,格式为"星期 月 日"

  \h 显示简写主机名,默认为localhost

  \t 显示24小时时间制,格式为 "HH:MM:SS"

  \T 显示12小时时间制,格式为"HH:MM:SS"

  \A 显示24小时时间制,格式为"HH:MM"

  \u 显示当前用户名

  \w 显示当前工作目录的完整路径

  \W 显示当前工作目录的最后一层目录

  \# 执行的第n个命令

  \$ 提示符 root用户是# 其他用户是$

17 位置参数变量

  $n  ->n为数字 $0代表命令本身 $1-$9代表第一都第9个参数 10以上的参数用大括号 ${10}  ${11}

  $*  -> 代表命令中的所有参数,$*把所有参数看做一个整体

  $@  ->代表命令中所有参数,$@把所有参数区分对待

  $#  -> 代表命令中所有参数的个数

  这个循环一次

  for in "$*"

    do 

      echo $i

    done

  这个循环多次

  for y in "$@"

    do

      echo $y

    done

18 预定义变量

  $?  最后一次执行命令的返回状态 如果这个命令执行的结果为0 则证明上一个命令执行正确 否则 执行失败

  $$  当前进程的进程号(PID)

  $!  后台运行的最后一个进程的进程号(PID)

19 接收键盘的输入

  read [选项] [变量名]

  -p "提示信息"  在等待read时给出的提示信息

  -t 秒数  read命令会一直等待用户输入,使用此选项可以指定等待时间

  -n 字符数  read命令只接收指定的字符数,就会执行

  -S   隐藏输入的数据,使用于机密性的信息 比如密码

  例子:read -t 30 -p "Please input your name:" name  ->表示把输入的信息放入变量name中

  

 

posted on 2016-03-08 16:54  碎儿  阅读(1280)  评论(0编辑  收藏  举报