shell的一些特殊的内置变量,这些变量中包含一系列的选项,如果在选项中包含字母i,则表示shell以交互式运行,通过脚本可以检测是否以交互式运行。在提示符后键入一下脚本:
case "$-" in
*i*) echo This shell is interactive;;
*)echo This shell is not interactive;;
B shelld基本的启动过程:系统运行的第一个进程是init,他的PID的为1,从文件中inittab中读取指令(System V系统)或者派生一个getty进程(BSD系统)这些进程打开终端端口,以提供标准输入的来源,标准输出和标准错误输出的去处,且在屏幕上显示一个登录提示符,接下来执行的是/bi9n/login程序,login程序主要做了提示用户输入口令、加密并验证用户输入的口令,设置初始环境、启动用户登录的shell(登录shell是passwd文件的最后一项)。sh进程首先查找系统文件/etc/profile,并且执行其中的命令,然后再爱用户的主目录下查找名为.profile中的命令后,屏幕上将显示默认的命令提示符,即美元符$,然后在b shell等待用户输入命令,
1.环境
1.1初始化文件
Bourne shell启动后,首先查找系统文件/etc/profile。执行完这个初始化文件中的命令,就接着执行用户主目录下的文件.profile。初始化设置的框架文件可在/etc/skel目录下找到。
1.1.1 /etc/profile
profile文件是一个系统级的初始化文件,由系统管理员进行设置,在用户登录时制定制定的任务,这个文件在bourne shell启动时执行。
1.1.2 .profile
是用户定义的初始化文件,保存在每个用户的主目录下,用户登录时,会执行一遍,这个文件主要是定制和修改shell的环境的功能
环境和终端的设置通常都在这个文件里,此外要启动某个窗口应用程序或数据库应用程序,也是在这里进行。
1.2提示符
交互式使用时,shell会提示用户输入命令,看到提示符,就可以开始输入命令了。B shell提供了主提示符($)和次提示符(一个向右的尖括号>)
阅读(2139) | 评论(0) | 转发(0) |