linux常用命令--ps、netstat、find
一、ps
1.1ps命令简介
Linux中的ps命令是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用top命令。
要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程,而 ps 命令就是最基本同时也是非常强大的进程查看命令。使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等。总之大部分信息都是可以通过执行该命令得到的。
ps 为我们提供了进程的一次性的查看,它所提供的查看结果并不动态连续的;如果想对进程时间监控,应该用 top 工具。
kill 命令用于杀死进程。
1.2linux上进程有5种状态
1. 运行(正在运行或在运行队列中等待)
2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)
3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)
4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)
5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行)
1.3ps工具标识进程的5种状态码
D 不可中断 uninterruptible sleep (usually IO)
R 运行 runnable (on run queue)
S 中断 sleeping
T 停止 traced or stopped
Z 僵死 a defunct (”zombie”) process
1.4ps -ef
显示所有进程信息,连同命令行
(my_python_env)[root@hadoop26 ~]# ps -ef | head -
UID PID PPID C STIME TTY TIME CMD
root : ? :: /sbin/init
root : ? :: [kthreadd]
root : ? :: [migration/]
root : ? :: [ksoftirqd/]
1.5ps -aux
列出目前所有的正在内存当中的程序
(my_python_env)[root@hadoop26 ~]# ps -aux | head -
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1.0 0.0 ? Ss : : /sbin/init
root 0.0 0.0 ? S : : [kthreadd]
root 0.0 0.0 ? S : : [migration/]
root 0.0 0.0 ? S : : [ksoftirqd/]
1.6对字段的解释
USER:该 process 属于那个使用者账号的
PID :该 process 的号码
%CPU:该 process 使用掉的 CPU 资源百分比
%MEM:该 process 所占用的物理内存百分比
VSZ :该 process 使用掉的虚拟内存量 (Kbytes)
RSS :该 process 占用的固定的内存量 (Kbytes)
TTY :该 process 是在那个终端机上面运作,若与终端机无关,则显示 ?,另外, tty1-tty6 是本机上面的登入者程序,若为 pts/0 等等的,则表示为由网络连接进主机的程序。
STAT:该程序目前的状态,主要的状态有
R :该程序目前正在运作,或者是可被运作
S :该程序目前正在睡眠当中 (可说是 idle 状态),但可被某些讯号 (signal) 唤醒。
T :该程序目前正在侦测或者是停止了
Z :该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (疆尸) 程序的状态
START:该 process 被触发启动的时间
TIME :该 process 实际使用 CPU 运作的时间
COMMAND:该程序的实际指令
二、netstat
2.1netstat功能介绍
netstat命令用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。
如果你的计算机有时候接收到的数据报导致出错数据或故障,你不必感到奇怪,TCP/IP可以容许这些类型的错误,并能够自动重发数据报。但如果累计的出错情况数目占到所接收的IP数据报相当大的百分比,或者它的数目正迅速增加,那么你就应该使用netstat查一查为什么会出现这些情况了。
2.2使用netstat找出程序运行的端口
(my_python_env)[root@hadoop26 ~]# netstat -anp | grep ssh
tcp 0.0.0.0: 0.0.0.0:* LISTEN /sshd
tcp ::: :::* LISTEN /sshd
参数介绍
a:显示所有连线中的socket
n:直接使用ip地址,而不通过域名服务器
p:显示正在使用socket的程序识别码和程序名称
三、find
3.1命令介绍
find命令用于在文件树中查找文件,并作出相应处理
3.2语法格式
find PATHNAME –OPTION [-print –exec -ok]
参数解释:
PATHNAME:就是find命令作用的目录
-print:把查询的结果打印到标准输出
-exec:把查询的结果执行相应的命令
-ok:也是把查询到的结果执行相应的命令,但是在执行命令之前会询问是否执行
3.3-name选项
-name是根据文件名来做查找
(my_python_env)[root@hadoop26 ~]# find ~ -name test
/root/miniconda2/lib/python2./site-packages/wheel/test
/root/miniconda2/envs/my_python_env/lib/python2./site-packages/tornado/test
/root/miniconda2/envs/my_python_env/lib/python2./site-packages/wheel/test
/root/miniconda2/envs/my_python_env/lib/python2./site-packages/luigi/static/visualiser/js/test
/root/miniconda2/pkgs/wheel-0.29.-py27_0/lib/python2./site-packages/wheel/test
/root/test
-name选项支持正则
查找大写字母开头的文件
(my_python_env)[root@hadoop26 ~]# find ~ -name '[A-Z]*' | head -
/root/fcitx-3.4.-bin/README
/root/metastore_db/README_DO_NOT_TOUCH_FILES.txt
/root/metastore_db/log/README_DO_NOT_TOUCH_FILES.txt
/root/metastore_db/seg0/README_DO_NOT_TOUCH_FILES.txt
/root/doc/org/wltea/analyzer/cfg/DefaultConfig.html
3.4-o选项
连接多个查询条件,或者的意思
(my_python_env)[root@hadoop26 ~]# find ~ -name 'a*' -o -name 'b*' | head -
/root/fcitx-3.4.-bin/usr/bin
/root/testshell/a.sh
/root/doc/org/wltea/analyzer
/root/doc/allclasses-noframe.html
/root/doc/allclasses-frame.html
linux常用命令--ps、netstat、find的更多相关文章
- linux常用命令 ps
linux常用命令 ps Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的那些进程.ps命令列出的是当前那些线程的快照,就是执行ps命令的那个时刻的那些进程 ...
- 测试必知必会系列- Linux常用命令 - ps(重点)
21篇测试必备的Linux常用命令,每天敲一篇,每次敲三遍,每月一循环,全都可记住!! https://www.cnblogs.com/poloyy/category/1672457.html 查看所 ...
- LINUX 常用命令 ps 详解
ps常用命令 ps -u ceshi 查看特定用户(ceshi)进程的情况 ps aux | grep nginx 查找nginx的进程 pa -ef | grep nginx 查找nginx的进程 ...
- linux常用命令:netstat 命令
netstat命令用于显示与IP.TCP.UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况.netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP ...
- linux 常用命令-ps命令
ps(process status):进程状态相关命令 1.
- 【操作系统之九】Linux常用命令之netstat
一.概念netstat命令用于显示与IP.TCP.UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况.netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP ...
- linux 常用命令-ps(process state)
ps -ef | grep 端口号:查看某个端口的占用情况 ps -tunlp | grep 端口号:查看占用端口的进程名称
- linux常用命令 、查看日志、web排查
linux常用命令 ps aux|grep xxx (比如 ps aux|grep tomcat ps aux|grep tomcat-portalvip ps aux|grep nginx 等) r ...
- linux常用命令的介绍
本文主要介绍Linux常用命令工具,比如用户创建,删除,文件管理,常见的网络命令等 如何创建账号: 1. 创建用户 useradd -m username -m 表示会在/home 路径下添加创建用户 ...
随机推荐
- Django 应用 Buildbot
Django作者之一 JACOB KAPLAN 所写的buildbot应用在Django系统. 全文总共分为两个部分 1,http://jacobian.org/writing/ci-is-hard/ ...
- VisualVM 的 OQL 的一些例子
Visual VM的OQL语言是对HeapDump进行查询,类似于SQL的查询语言,它的基本语法如下: select <JavaScript expression to select> [ ...
- nyoj 106 背包问题
点击打开链接 背包问题 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 现在有很多物品(它们是可以分割的),我们知道它们每个物品的单位重量的价值v和重量w(1<=v ...
- iOS 播放声音文件
播放声音可以通过3中方式来完成. 1.AVAudioPlayer 使用简单方便,但只能播放本地音频,不支持流媒体播放. //初始化文件地址 NSBundle *bundle = [NSBundle m ...
- MFC学习 序列化
void CArchiveView::OnWrite() { // Archive就是可序列化的类, 要头文件中DECLARE_DYNCREATE(CArchiveDoc) // 重写 virtual ...
- 技术转载:Jni学习四:如何编写jni方法
转载:http://blog.chinaunix.net/u1/38994/showart_1099528.html 一.概述: 在这篇文章中将会简单介绍如何编制一些简单的JNI 方法.我们都知道JN ...
- javaScript 封装
在基于web 的b/s 架构的项目中, 丰富的界面都离不开 javascript, javascript 在 html 中变得越来越强大,但是我们在写 javascript 的时候都比较随意,随着页面 ...
- 两个一样的tomcat不能同时启动解决方法
环境:两个Tomcat7.0.20,使用一个JVM,JDK7,Win7 64位系统. 1.使用压缩版的tomcat不能使用安装版的. 2.第一个tomcat的配置不变. 3.增加环境变量CATALIN ...
- 学习总结 JDBC
- 学习练习 java 实例属性 静态属性
package com.hanqi; public class Test11Car11 { //静态 //实例属性 private int m = 0; //静态属性 //所有实例共有的,在内存里只有 ...