linux终端常用命令【update...】

1. 进程命令

1. 查看进程

抓取进程:ps,参数示例:
ps a 显示现行终端机下的所有程序,包括其他用户的程序。
ps -A 显示所有程序。
ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
ps -e 此参数的效果和指定"A"参数相同。
ps e 列出程序时,显示每个程序所使用的环境变量。
ps f 用ASCII字符显示树状结构,表达程序间的相互关系

ps -ef  # 抓取所有进程
ps -ef|grep python  # 抓取python运行的进程
jobs -l  #查看该终端下 后台挂起的进程(终端关闭后失效)

2. 杀死进程

kill xxx
# 示例:
kill -9 1432 # 1431为进程号PID

3. 后台运行进程

nohup Command [ Arg … ] [ & ]
# 例:
# 让test.py程序在后台运行,并将输出重定向到文件 test.log 中
nohup python -u test.py > test.log 2>&1 &
#  “-u”表示不启用python缓存,实时输出打印信息到指定文件中;若不用-u,无法实时查看到文件中的内容
nohup python test.py >/dev/null 2>&1 &
# 将正常和错误输出都送入“无底洞”/dev/null中,即不输出任何东西

解析:

  1. nohup 不挂断地运行命令,忽略所有挂断信号(SIGNUP信号),比如当账号注销时。

  2. 最后的&:表示后台运行。 所以,nohup command &,表示后台运行nohup命令。

  3. linux中的0表示标准输入,1表示标准输出,2表示标准错误输出。

  4. > 表示覆盖式重定向。正常输出是把内容输出到显示器上,重定向是把内容输出到文件中。 command > xxx.txt,将输出重定向到xxx文件中。

  5. >> 表示追加式重定向。command >> xxx.log,将输出重定向追加到xxx.log文件中。

  6. 2 > &1 ,2是标准错误输出,1是标准输出,这里的&表示引用的意思,对标准输出的引用。所以这个命令就表示将标准错误输出也重定向到标准输出指向的文件中。

4. 暂停进程

前台进程:ctrl+z
后台进程:kill -STOP PID

5. 继续进程

前台:fg PID
后台:kill -CONT PID

6. 终止进程

前台进程:ctrl+C
后台进程:kill -9 PID

7. 前后台进程切换

fg 1234 # 让后台运行的进程1234到前台来 
bg 1234 # 让进程1234到后台去; 

8. 批量删除进程

查看该脚本引发的所有进程

ps -ef | grep python | grep -v grep    //列出所有名字有“python ”的进程

用sh来对进程 批量执行kill命令:

ps -ef | grep python | grep -v grep | awk '{print "kill "$2}' | sh

你可能感兴趣的:(服务器,linux,运维,服务器)