shell编程

shell编程

shell是命令解释器,也可以编程,包含J过程诺言的诸多特性。常用的shell见下表

  1. ash, 由Kenneth Almquist编写,是linux中占用资源最少的一种shell, 它只包含24个内部命令,因而使用起来很不方便
  2. bash, 是Iinux的默认shell, 由Brian F ox和Chet Ramey共同完成,是Bourne Again Shell的缩写,内部命令- 共有40个,具有以下特点
    a)可以使用类似dos下面的doskey功能, 用方向键查阅和快速输入并修改命令
    b)自动通过查找匹配的方式给出以某字符串开头的命令
    c)包含了自身的帮助功能,你只要在提示符下面键入help就可以得到相关的帮助
  3. ksh, 由Eric Gisim编写,是Korn Shell的缩写。共有42条内部命令。最大的优点是几乎和商业发行版的ksh完全兼容
  4. csh,由以William Joy为代表的47位作者编写,共有52个内部命令。该shell其实指向/bin/tcsh这 个shel,也就是说:csh其实就是tcsh
  5. zch, 由Pua1 Falstad完成, 共有84个内部命令。如果只是一 般用途,没必要安装这种shell
    shell编程类似dos中的批处理文件,又叫shell script, shell程序
    输入输出重定向
    在Linux中,每个进程都有3个文件描述指针可供使用:
    1标准输入,文件描述指针为0
    2.标准输出,文件描述指针为1
    3.标准错误输出,文件描述指针为2
    这3个指针使进程可以接收标准输入终端的输入,同时由标准输出终端来显示。linux中也提供 了输入输出重定向来取
    代这些标准输入输出设备。在shel1中, 可以使用>,<,等来进行重定向
    前台和后台
    shell编程
    shel中的环境变量
    hell在开始执行时就已经定义了一些和系统的工作环境相关的变量, 用户可读可修写。常见的有
    HOME :用来保存注册目录的完成路径名
    PATH :用于保存用冒号分隔的目录路径,shell将按此给出的顺序搜索这些目录,查找可执行文件来执行
    TERM :终端类型
    UID :当前用户的标识,是一串数字
    PWD :当前工作目录的绝对路径,该变量的值随cd命令的使用而变化
    PS1 :主提示符,在特权用户下,默认的主提示符为# ;普通用户下,默认的主提示符为$
    PS2 :辅助提示符,在用户输入命令过程中,如果用户有行尾输入然后回车,或者直接按回车,shel1判断用户的命
    令还没有结束,显示这个提示符,提示用户继续输入命令的其余部分,默认的辅助提示符是>
    shell中的变量
    1)临时变量: sl程序内部定义,包括用户自定义变量和位置变量
    2)永久交量:即环境变量,值不随解本的执行结束而消失(如SPATH. SLANG, SHE SPS1, SHOME)变量命名:字母,数字或下划线组成,不能以数字开头,读取变量时加S.
    如果值中有空格,
    需要使用引号,单引号不解析其中的变量,照样显示;
    双引号会把变量解析出来.
    export
    在命合行中设置的交量是当的局部变量,epr后变为环境变量(0cooce命令执行但仅限于当前会话,如需要每次会话能访问,则需要加在-/ bashr或-/.ah pofle中
    shell中其它的预定义临时变量
    shell编程
    简单的shell

shell编程
单引号和双引号的区别

shell编程
执行shell
1.给该用户赋予shell的执行权限
2.sh ./xxx.sh
键盘上输入-readshell编程
算数运算
shell编程
测试语句

shell编程