高级编程第二章
1、日志文件
创建日志文件的重要性
以时间为标识的日志文件
以进程号为标识的临时文件
2、 信号
Ø 信号就是系统向脚本或命令发出的消息,告知它们某个事件的发生
Ø Kill -l 列出所有的信号
Ø Kill 发送信号给进程。
信号 |
信号名 |
含义 |
1 |
SIGHUP |
挂起或父进程被杀死 |
2 |
SIGINT |
来自键盘的中断信号,通常是CTRL+C |
3 |
SIGQUIT |
从键盘退出 |
9 |
SIGKILL |
无条件终止 |
11 |
SIGSEGV |
段(内存)冲突 |
15 |
SIGTERM |
软件终止() |
信息0为“退出shell”信号。为了发出信号0,只要从命令行键入EXIT,或在一个进程或命令行中使用<CTRL+D>即可。
Trap 捕捉信号
Trap 可以使你在脚本中捕捉信号。命令形式为:trap name signal(s) 其中,name是捕捉到信号以后所采取的一系列操作。实际中,name一般是一个专门用来处理所捕捉信号的函数。Name需要用双引号(“”)引起来。Signal就是待捕捉的信号。
最常见的行动包括:
1)清除临时文件
2)忽略该信号。(trap “” 2 3)
3)询问用户是否终止该脚本的运行。
While : 总是为真
2.4 eval
eval 命令将会首先扫描命令行进行所有的置换,然后再执行该命令。该命令适用于那些一次扫描无法实现其功能的变量。
例:MYFILE=”cat myfile ”; `eval $MYFILE`
2.5 logger
Logger 命令向/var/log/message文件发送消息。
Logger命令的一般形式为:
logger –p -i messages
-p :为优先级,这里只涉及到提示用户注意的优先级,这也是缺少值
-i : 在每个消息中记录发送消息的进程号