Unix Shell
Bourne Shell - AT&T - 默认命令提示符是美元符号$
C Shell - 美国加州大学Berkeley分校开发 - 默认命令提示符号%
Korn Shell(俗称ksh) - AT&T的David Korn,Bourne Shell的扩展 - 默认命令提示符是美元符号$
Linux Shell
GNU bash(Bourne Again Shell,俗称bash,Linux系统上默认的shell) - 一种增强的Bourne Shell - 默认命令提示符是美元符号$
TC Shell(俗称tcsh) - UNIX C Shell的一个兼容分支 - 默认命令提示符是大于符号〉
Z Shell - 结合了Bourne Again Shell、TC Shell和Korn Shell的多种功能
Public Domain Korn Shell(pdksh)- Korn Shell的克隆版本(收费的)- 默认命令提示符是美元符号$
查看Linux有哪些版本的shell,可以查看/etc/shell或etc/shells文件:
[root@YW ~]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/tcsh
/bin/csh
/bin/ksh
/bin/zsh
Shell功能需求在POSIX(Portable Operating System Interface,可移植操作系统接口)标准中定义,也就是POSIX 1003.2 - POSIX
shell 标准及通用工具程序。
PID:进程标识,Process Identification
进程由可执行程序、进程的数据和堆栈、程序指针和堆栈指针、寄存器以及程序运行时需要的所有信息组成;
窗口管理器进程(比如:twm、fvwm等)
ps命令和它的众多选项能够以多种格式列出当前正在运行的进程,常用ps aux命令
pstree命令以树状的方式显示所有的进程,其根进程init将首先运行,如果指定了用户名,则用户进程就是树的根,如果一个进程派
生了多个同名进程,pstree将同样的分支用方括号组合起来,并以进程的个数为前缀来命名。
系统调用(System Call):是对内核服务的请求,并且是进程访问系统硬件的唯一方式。
init进程(PID:1)初始化系统
标准输入 stdin
标准输出 stdout
标准错误输出 stderr
初始工作环境变量:
HOME、SHELL、USER和LOGNAME根据/etc/passwd文件中的信息进行赋值;
HOME被设为用户的主目录;
SHELL被设为登录shell的名字,即/etc/passwd文件中的最后一列;
USER和LOGNAME被赋值为登录名;
还设置了search path - PATH,常用的工具程序可以在该变量指定的目录中找到;
可以用echo ${变量名}查看变量值,查看当前环境变量设置情况的命令是env。
token 词,将命令行分解成token的过程称为词法分析(lexical analysis)
执行命令前,shell按如下顺序判定命令类型:
1、别名
2、关键字
3、函数
4、内置命令
5、可执行程序
阅读(1040) | 评论(0) | 转发(0) |