进和的管理和调度
PID :process ID
决定一个文件系统的访问不只是通过UID和GID。SElinux的权限更大
ps 默认显示当前终端的信息
a 显示所有终端的信息
x 不属于任何终端的信息
u 显示用户自己的信息
f
init 的进永远为1,是所有进程的父进程
VSZ 虚拟内存
RSS 真实内存
STAT 进和当前的状态 Ss睡眼状态
TTY ? 和任何终端没有关系
pts/0 图形终端
pstree 查看进程的父子关系
过滤出指定的进程:
pgrep
pidof
signals:
15 进程正常的结束 不产生垃圾 默认
9 强制结束
1 re-readconfig 重新读取配置文件
杀死进程:
vi kill.txt
kill process
:w
service vsftp reload 服务不会断 而是重新加载配置文件
就是用的1的信息 = kill -1 服务的进程号
如要一个文件的进程号有多个呢?我们就用killall +comm或服务
pkill 可以是进程号 也 可以是comm或服务
进程的优先级: nice
没运行时给先给它 nice -n 5 command
在运行时调整它的优先级 renice 5 PID
1\进程的优先级范围-20到19.数字越小,优先级越高
2\默认的优先级为0。
3\仅root用户能提升优先级,普通用户只能降低优先级。
Job control:
在命令后面加 &,将进程放到后台运行.
jobs 查看后台程序的运行情况。
kill %jobnum 结束jobs
CTRL+Z (stoped) 暂停 信号 19,17 将运行的程序放入后台并暂停
CTRL+C 中断
+ 默认的jobsnum.只有一个
bg %num 将一个在后台暂停的程序激活,继续在后台运行。
fg %num 将一个在后台的程序调度到前台。
计划任务:
at: 仅执行一次就从排程中删除
crontab:周期性计划任务
at 12:30
>shutdown -h now
>CTRL+d 跳出
crontab -e 编辑
* * * * *
分 时 日 月 周
*匹配所有
*/1 * * * * :每隔一分钟
1 10-12 * * * :每天10到12点的第一分钟
run-parts 可以执行目录下的文件。用这条命令可以同时执行多个文件。
echo $?
查看前一个命令是否执行正确。如果正确为0,不正确为1-127.
&&:当前一条命令执行成功是才执行后一条命令
||:当前一条命令失败才执行后一条命令
1、系统中CPU使用率最高的10个进程保存/process.txt,每隔10分钟,并且发送邮件中给boss.
*/10 * * * * ps axo %cpu,pid,comm |sort -r|head -n 11 >>process.txt &&
mail -s "process" root < /process.txt
*/10 * * * * ps axo %cpu,pid,comm |sort -r|head -n 11|tee -a /process.txt |mail -s "process" root
test
-x 是否有执行权限
变量:
本地变量,只能在当前终端调用
环境变量,可以让子shell继承
全局变量,可以被所有用户调用
查看命令的绝对路径:
which
type -a
$() and ``:引用命令的结果
[root@linux ~]#echo $[100+100]
200
\ : 跳脱符
"" 遇到 $ `` \ ! 还是有意思的!
login shell Vs non-login shell
su - su
让全局变量定义好后就生效的命令。source /etc/profile . /etc/profile
/etc/profile ~/.
余数的计算:nu=$((13%3)); echo $nu
加法的计算:echo $[X+Y]
阅读(411) | 评论(0) | 转发(0) |