2008-01-22

学习shell咯1

关键字: shell
三大Unix shell
1,Bourne shell(AT&T shell, $)
2,C shell(Berkeley shell, %)
3,Korn shell(a superset of the Bourne shell, $)

几大Linux shell
Bash -- Linux default shell(The GNU Bourne Again shell, $)
TC shell(bundled with Solaris 8+, >)
Z shell
Public Domain Korn shell -- pdksh($)

看看Ubuntu下面支持哪些shell:
$ cat /etc/shells
# /etc/shells: valid login shells
/bin/csh
/bin/sh
/usr/bin/es
/usr/bin/ksh
/bin/ksh
/usr/bin/rc
/usr/bin/tcsh
/bin/tcsh
/usr/bin/esh
/bin/bash
/bin/rbash
/bin/dash
/usr/bin/screen


POSIX(Portable Operating System Interface) 1003.2标准是shell的国际标准

/etc/passwd文件最后一行是login之后load的shell,如果为null,则启动Bash

ps命令查看当前进程,pstree/ptree则按树状显示

系统调用fork会duplicate一份要调用的进程

shell命令如果为built-in,则shell处理它;如果在disk上,则shell调用fork来复制一份它自己作为子shell,parent shell则wait,子shell去exec该命令,启动新程序并overlay子shell,新程序运行完后exit,exit code为0表示成功,非0表示失败($?变量)

kill命令加PID用来杀死进程
评论
发表评论

您还没有登录,请登录后发表评论

hideto
搜索本博客
我的相册
A6bdc31c-c66e-468e-961e-9cc721e82adc-thumb
screenshot
共 1 张
存档
最新评论