常用进程指令
常驻在内存当中的进程称为服务
#查看
pstree #树状进程
pstree -Aup #PID 与 users
ps -l #只与自己的 bash 有关,PID为父进程,PPID为子进程
ps aux #观察系统所有的进程数据
top -d 2 #每两秒钟更新一次 top ,观察整体信息:
#前后台
tar -zpcf /tmp/etc.tar.gz /etc & #『& 』后台运行
jobs [-lrs] #后台运行的任务, [ctrl]-z
fg %jobnumber #后台拿到前台运行,jobnumber 为工作号码(数字)。
bg %jobnumber #让该工作在背景下进行
#管理进程
kill -signal %jobnumber
-l :这个是 L 的小写,列出目前 kill 能够使用的讯号
-1 :重新读取一次参数的配置文件 (类似 reload);
-2 :代表与由键盘输入 [ctrl]-c 同样的动作;
-9 :立刻强制删除一个工作;
-15:以正常的进程方式终止一项工作。与 -9 是不一样的。
killall -i -9 bash #依次询问每个 bash 程序是否需要被终止运作!-i 表示提示,-9强行
#脱机管理
nohup ./sleep500.sh & #no hang up(不挂起),用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行
单次执行
#定时任务 at
systemctl restart atd # 重新启动 atd 这个服务
systemctl enable atd # 让这个服务开机就自动启动
systemctl status atd # 查阅一下 atd 目前的状态
#at的限制
/etc/at.allow #没有在这个文件中的使用者则不能使用at
/etc/at.deny #写在这个at.deny 的使用者则不能使用at
#两个文件都不存在,那么只有root 可以使用at 这个指令
#五分钟后,执行
at now + 5 minutes
at> /bin/mail -s "testing at job" root < /root/.bashrc
at> <EOT> #这里输入 [ctrl] + d 就会出现 <EOF> 的字样!代表结束!
atq #查看几个at任务
at -c 2 #第 2 项工作内容列出来查阅
atrm 2 #第 2 个工作移除!
#在 2015/08/04 23:00 关机
at 23:00 2015-08-04
at> /bin/sync
at> /bin/sync
at> /sbin/shutdown -h now
at> <EOT>
#系统有空时才执行
batch
at> /usr/bin/updatedb
at> <EOT>
job 4 at Thu Jul 30 19:57:00 2015
循环执行
#配置文件
/etc/cron.allow:将可以使用crontab 的账号写入其中
/etc/cron.deny:将不可以使用crontab 的账号写入其中
#用 ming 的身份在每天的 12:00 发信给自己
crontab -e# 此时会进入 vi 的编辑画面让您编辑工作!注意到,每项工作都是一行。
0 12 * * * mail -s "at 12:00" ming < /home/ming/.bashrc
#分 时 日 月 周 |<==============指令串========================>|
crontab -l #查看工作
crontab -r #移除工作