Linux shell 进程管理
来源:互联网 发布:网络机顶盒检测 编辑:程序博客网 时间:2024/06/05 15:04
Linux系统和应用程序可以生成超过30个信号。
快捷键
Ctrl+C 中断进程
Ctrl+C组合键会发送 SIGINT 信号
Ctrl+Z 展厅进程
Ctrl+Z组合键会生成一个 SIGTSTP 信号
方括号中的数字是shell分配的作业号 (job number),shell将shell中运行的每个进程称为作业,并为每个作业分配唯一的作业号。它会给第一个作业分配作业号1,第二个作业号2,以此类推。
如果你的shell会话中有一个已停止的作业,在退出shell时,bash会提醒你。
捕获信号 trap
控制台后台运行脚本
当 & 符放到命令后时,它会将命令和bash shell分离开来,将命令作为系统中的一个独立的后台进程运行。显示的第一行是:
[1] 3231
方括号中的数字是shell分配给后台进程的作业号。下一个数是Linux系统分配给进程的进程ID(PID)。
如果终端会话退出,那么后台进程也会随之退出。
非控制台下运行脚本
nohup
nohup 命令运行了另外一个命令来阻断所有发送给该进程的 SIGHUP 信号。这会在退出终端会话时阻止进程退出。
由于 nohup 命令会解除终端与进程的关联,进程也就不再同 STDOUT 和 STDERR 联系在一起。为了保存该命令产生的输出, nohup 命令会自动将 STDOUT 和 STDERR 的消息重定向到一个名为nohup.out的文件中。
作业控制 jobs
带加号的作业会被当做默认作业。在使用作业控制命令时,如果未在命令行指定任何作业号,该作业会被当成作业控制命令的操作对象。当前的默认作业完成处理后,带减号的作业成为下一个默认作业。任何时候都只有一个带加号的作业和一个带减号的作业,不管shell中有多少个正在运行的作业。
要以后台模式重启一个作业,可用 bg 命令加上作业号。fg是前台启用
调整谦让度
在多任务操作系统中(Linux就是),内核负责将CPU时间分配给系统上运行的每个进程。调度优先级(scheduling priority)是内核分配给进程的CPU时间(相对于其他进程)。在Linux系统中,由shell启动的所有进程的调度优先级默认都是相同的。
调度优先级是个整数值,从20(最高优先级)到+19(最低优先级)。默认情况下,bash shell以优先级0来启动所有进程。
nice
renice 命令
定时运行作业
at 命令和 cron 表
at 命令会将作业提交到队列中,指定shell何时运行该作业。 at 的守护进程 atd 会以后台模式运行,检查作业队列来运行作业。大多数Linux发行版会在启动时运行此守护进程。
atd 守护进程会检查系统上的一个特殊目录(通常位于/var/spool/at)来获取用 at 命令提交的作业。默认情况下, atd 守护进程会每60秒检查一下这个目录。
at 命令
at [-f filename] time
默认情况下, at 命令会将 STDIN 的输入放到队列中。你可以用 -f 参数来指定用于读取命令(脚本文件)的文件名。
atq 命令可以查看系统中有哪些作业在等待。
就能用 atrm 命令来删除等待中的作业。
cron程序.
min hour dayofmonth month dayofweek command
crontab 命令
如果anacron知道某个作业错过了执行时间,它会尽快运行该作业。
$HOME/.profile
参考文献
linux命令汗与shell脚本编程大全
- Linux shell 进程管理
- Linux 的 Shell 子Shell 作业管理 进程管理
- Shell进程管理脚本
- shell之进程管理
- 进程管理【Ubuntu-shell】
- shell进程管理
- 《Linux Shell脚本攻略》 笔记 第九章:进程管理
- adb shell进程管理命令
- linux 进程监控 shell
- 杀死Linux Shell进程
- linux中的shell 进程
- linux shell多进程
- linux shell管理命令
- 网络安全管理【Linux-shell】
- Linux 进程管理
- Linux 进程管理
- Linux 进程管理
- Linux进程管理
- oracle索引详解
- win32 3步打包和释放资源
- VM222:2 pages/two/two.json 未找到入口 pages/two/two.json 文件,或者文件读取失败,请检查后重新编译。
- 数据类型及其存储位置
- 62. Unique Paths
- Linux shell 进程管理
- Port already in use: 1099 的解决办法
- [tarjan+bitset]BZOJ 2208——[Jsoi2010]连通数
- 偷偷水题应该没人看见吧
- jvisualvm 连接远程 tomcat
- java io操作
- char *a 与char a[]所占空间解析题
- Java语言高编——异常
- 深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接