使用c++查看linux服务器某个进程正在使用的内存_精选20个常用的Linux命令

今天总结几个非常常用的Linux命令,其中有几个在面试中很可能问相关命令的原理,比如后台运行命令。希望对大家有所帮助,最好自己去尝试在Linux操作系统中实践一下。

2bf0a600-5d13-eb11-8da9-e4434bdf6706.png

1 查看目录以及权限

在windows中,使用dir查看当前目录中文件。在Linux中使用ls(list)查看当前目录文件。

windows中的dir,如下图所示

2df0a600-5d13-eb11-8da9-e4434bdf6706.png

在Linux中,通常使用ls -l列出,其中可以查看文件属性,所属用户组等较为详细的信息。下面详细解释从左到右每一列是什么意思

2ff0a600-5d13-eb11-8da9-e4434bdf6706.png
ls -l

第一列第一个字段:文件类型,后面9个字符是模式,其中分为三组,每一组三个字段。第一组为所属用户权限。第二组为所属组的权限。第三组为其他用户所属权限。其中r(read)代表可读,w(write)代表可写,e(execute)代表可执行。在后面的9个字符中,如果是字母说明有相应的权限,如果为"-"代表没有权限。举一个例子

-rw-r-r--:此为普通文件,对于所属用户为可读可写不能执行,对于所属组仅仅可读,对于其他用户仅为读。

第二列 硬链接数目

硬链接允许作用之一是允许一个文件拥有多个有效路径名,从而防止误删。但是只能在同一文件系统中的文件之间进行连接,不能对目录进行创建。

第三列是所属用户,第四列为所属组,第五列为文件大小,第六列为文件被修改的时间,最后为文件名。其中使用chown改变所属用户,chgrp改变所属组。

2 nohup(no hang up不要挂起的意思)

这也是常用后台启动程序的常用方法,如果在交互命令行中运行程序,我们很容易就终止它。在交互环境下,我们的输出一般都会直接输出到当前界面,在后台启动的时候通常会定向到文件,那通常情况是下面这个命令。

nohup command >X.file 2 >&1 &

其中1表示标准输出。2表示文件标准错误输出。2>1&即将两者合并,但是合并到哪里,就是X.file.

3 查看进程

有的时候我们需要查看进程是否已经启动或者尝试终止进程。经常使用的命令为ps -ef---列出当前正在运行的程序,那如何定位我们想要查看的进程A,这个时候使用grep,即ps -ef| grep A.

4 awk

如果文件是csv(a.csv),按照","分割,需求为打印第一列和第二列

awk -F "," '{print 2}' a.csv

获取第三列最大值

awk 'BEGIN{max=0}{if(31f0a600-5d13-eb11-8da9-e4434bdf6706.png3}END{print max}'

5 tar解压缩

解压缩命令

常用参数

-c:创建的tar文件
-x:解开tar文件
-t:列出tar文件中包含的文件信息
-r:附加新的文件到tar文件中

常用命令组合

tar -xvf /home/a.tar  //打开tar打包文件
tar -zxvf /home/a.tar.gz //解压以gzip压缩的文件
tar -jxvf /home/a.tar.bz2 //解压以bzip压缩的文件
tar -cvf /home/a.tar /home 打包/home下所有文件

6 scp

通过scp命令在多台服务器中的相互复制 传输文件。为了省下输入密码,可以设置免密登录。

常用组合:

例子1:将A服务器中/home/a.txt 复制到B服务器的/home中

scp -r /home/a.txt root@B_ip:/home

7 林哥的死亡命令 rm -rf

翻车现场请看次条。

8 watch

这个命令是动态查看命令执行的结果。比如如果需要每隔一秒高亮显示网络连接数的变化情况。则 watch -n 1 -d netstat -ant

例子:每隔一秒高亮显示http连接数的变化情况

watch -n 1 -d 'pstree | grep http'

例子:十秒一次输出系统的平均负载

watch -n 10 'cat /proc/loadavg'

9 df

查看磁盘大小

df -h

32f0a600-5d13-eb11-8da9-e4434bdf6706.png

10 tcpdump

和它类似的工具在windows中是wireshark,其采用底层库winpcap/libpcap实现。采用了bpf过滤机制。下面我们看看提供的不同参数的含义。

参数名含义
-n使用IP地址表示主机。使用数字表示端口
-i指定要监听的端口。如果为"-i any"表示住区所有网卡数据包
-v输出诸如ip数据包中的TTL更加详细的信息
-t不打印时间戳
-e显示以太网帧头部信息
-c仅仅抓取指定数量的数据包
-x按照十六进制显示数据包内容
-X不仅仅输出-x结果还输出十六进制对应的ASCII字符
-s设置抓包时的抓包长度
-w将输出结果定向到某个文件,一般为pcap后缀
-r从文件读取数据包并显示数字表示端口
-i指定要监听的端口。如果为"-i any"表示住区所有网卡数据包
-v输出诸如ip数据包中的TTL更加详细的信息
-t不打印时间戳
-e显示以太网帧头部信息
-c仅仅抓取指定数量的数据包
-x按照十六进制显示数据包内容
-X不仅仅输出-x结果还输出十六进制对应的ASCII字符
-s设置抓包时的抓包长度
-w将输出结果定向到某个文件,一般为pcap后缀
-r从文件读取数据包并显示

知道了相关参数,下面看几个案例

执行任务执行命令
捕获特定网口数据包tcpdump -i eth0
捕获特定个数(1000)的包tcpdump -c 1000 -i eth0
将捕获的包保存到文件tcpdump -w a.pcap -i eth0
读取pcap格式的包tcpdump -r a.pcap
增加捕获包的时间戳tcpdump -n -ttt -i eth0
指定捕获包的协议类型tcpdump -i eth0 arp
捕获指定端口tcpdump -i eth0 post 22
捕获特定目标ip+port的包tcpdump -i eth0 dst address and port 22
捕获DNS请求和响应tcpdump -i eth0 -s0 port 53
匹配Http请求头tcpdump -s 0 -v -n -l | egrep -i "POST /|GET /|Host:"
将捕获的包保存到文件tcpdump -w a.pcap -i eth0
读取pcap格式的包tcpdump -r a.pcap
增加捕获包的时间戳tcpdump -n -ttt -i eth0
指定捕获包的协议类型tcpdump -i eth0 arp
捕获指定端口tcpdump -i eth0 post 22
捕获特定目标ip+port的包tcpdump -i eth0 dst address and port 22
捕获DNS请求和响应tcpdump -i eth0 -s0 port 53
匹配Http请求头tcpdump -s 0 -v -n -l | egrep -i "POST /|GET /|Host:"

11 lsof

列出当前系统打开的文件描述符工具。可以得知感兴趣的描述符是被哪些进程使用

同样,我们看看相关参数

参数描述
-i显示sokcet文件描述符
-c显示指定的命令打开的所有文件描述符
-t仅显示打开了目标文件描述符的进程pid

老规矩,上几个例子

执行任务命令
列出所有的网络链接lsof -i
列出所有udp的网络链接lsof -i udp
列出谁在使用某个端口lsof -i :3306
列出谁在使用特定的tcp端口lsof -i tcp:80
根据文件描述范围列出文件信息lsof -d 2-3

12 nc

nc-->“瑞士军刀”。不知大家在渗透过程中,拿了shell有没有使用nc搞点事儿。它用来快速构建网络链接。常用来调试客户端程序。

参数描述
-i设置数据包传送的时间间隔
-l以服务器方式运行。默认为客户端运行
-k重复接受并处理某个端口上的所有链接
-p以客户端运行时强制其使用指定端口
-C将CR和LF两个字符作为结束符
-u使用udp协议。默认tcp协议
-Xnc客户端余代理服务器通信时默认为socks5协议。
-z扫描目标机器某个范围服务是否开启

小贱上案例

执行任务执行命令
扫描机器A端口号在30-40的服务nc -z A 30-40
连接服务器A 端口号为5000nc -C A 5000
传送文件MachineA:nc -v -n ip portE:\a.exe

13 netstat

netstat是一个网络信息统计工具。它可以得到网卡接口上全部了解,路由表信息,网卡接口信息等。通常在网络编程中我们用它来显示TCP连接以及状态信息。

参数描述
-n使用IP地址表示主机
-a显示结果中包含监听的socket
-t仅显示TCP连接
-r显示路由信息
-i显示网卡接口数据流量
-c每隔1s输出一次
-o显示socket定时器的信息
-p显示socket所属的进程的PID和名字

下面列举几个常用例子

执行任务执行命令
列出所有连接netstat -a
只列出TCP或者UDPnetstat -at/netstat -au
列出监听中的连接netstat -tnl
获取进程名、进程号以及用户 IDnestat  -nlpt
打印统计信息netstat -s
netstat持续输出netstat -ct
打印active状态的连接netstat -atnp | grep ESTA
查看服务是否运行(npt)netstat -aple| grep ntp

14 vmstat

vmstat能够实时输出系统的进程信息,内存使用,cpu使用等资源的使用情况

参数描述
-f显示系统自启动以来执行的fork次数
-s显示内存相关统计信息
-d显示磁盘相关统计信息
-p显示指定磁盘分区统计信息
count采样次数。

看一下vmstat都有哪些输出字段。

33f0a600-5d13-eb11-8da9-e4434bdf6706.png
在这里插入图片描述
字段名描述
procsr表示等待运行的而进程数目。b表示处于不可中断睡眠状态的进程数目
memoryswpd:使用的虚拟内存量。free:空闲内存量。buff:用作缓冲区的内存量。cache:用作缓存的内存量。
swapsi:从磁盘换入的内存量(/s)。so:交换到磁盘的内存量(/s)。
iobi:从块设备接收的块(blocks/s)。bo:发送到块设备的块(blocks/s)。
systemin:每秒中断的次数,包括时钟。cs:每秒上下文切换的次数。

这里注意哈,如果查看磁盘的更加详细信息,有另外iostat所得到的信心就更加详细哟

15 mpstat

能够实时监测多处理器系统中各个cpu的使用情况。这个命令的执行需要安装sysstat,在centos中执行yum install systat就好了。

34f0a600-5d13-eb11-8da9-e4434bdf6706.png
在这里插入图片描述

然后我们看看各个字段什么意思。

字段描述
cpu表示当前条信息属于哪个cpu的数据
%usr进程运行在用户空间所占cpu运行时间的比例
%nicenice值为负的进程运行在用户空间的时间占cpu总运行时间的比例
%iowaitcpu等待磁盘操作的时间占cpu总运行时间的比例
%irqcpu用于处理硬件中断时间占cpu总运行时间的比例
%softcpu用于处理软件中断的时间占cpu用运行时间的比例
%steal一对虚拟cpu。当超级管理员在处理某个虚拟cpu时,另一个等待它处理完才能运行。这段等待时间表示为steal时间占总运行时间的比例
%guest运行虚拟cpu时间占cpu总运行时间的比例
%idle系统空闲时间占cpu总运行时间的比例

16 split

将文件分割为数个。

split -5 a.txt//将a.txt每5行分割为一个文件

17 wc -c +filename

统计文件中单词的个数。

18 more/less

一页一页显示,通过空白键显示下一页/上一页

19 head/tail

查看某文件前几行或者后几行

20 diff

diff -c file1 file2 //显示两个文件的差异

更多Linux推文:

  • Linux 系统结构详解,看这一篇就够了

  • 2020年最漂亮的Linux发行版

  • 五分钟搞懂 Linux 重点知识

  • 教你如何在linux中写脚本提高工作效率

  • 别再说你不懂Linux内存管理了,10张图给你安排的明明白白!

36f0a600-5d13-eb11-8da9-e4434bdf6706.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/558509.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php数组如何去掉相同的元素,如何去掉php数组中的重复的元素

如何去掉php数组中的重复的元素发布时间:2020-07-30 09:49:32来源:亿速云阅读:74作者:Leah今天就跟大家聊聊有关如何去掉php数组中的重复的元素,可能很多人都不太了解,为了让大家更加了解,小编给…

台式电脑可以连wifi吗_不使用WIFI,手机也可以通过电脑的网络上网

让手机通过电脑上网的方式有很多种,最常见的就是 WIFI 了,而且简单直接。但是有时候台式机没有 WIFI ,或者电脑的 WIFI 设备已经连接到其他的网络了,这时候手机就不能通过电脑的 WIFI 连接到网络。那么还没有有办法连接到网络呢&a…

php架在底部页面,页脚始终保持在页面底部的网页布局方法

页脚始终保持在页面底部的网页布局方法导语:用CSS创建一个高度自适应布局,如何保证页脚(footer)在内容不超过一屏的情况下始终保持在布局最下方是一个比较头疼的事。下面就由百分网小编为大家介绍一下页脚始终保持在页面底部的网页布局方法,希…

pgsql 前10条_未来3年,广州83条城中村、285个旧街区将迎来改造

文、图/羊城晚报全媒体记者 赵燕华 通讯员 穗建未来3年,广州83条城中村将实施改造,285个旧街区将迎来改造,推进176个旧厂房改造,将整治1.24亿平方米违建……9月25日,在广州市深化城市更新工作推进高质量发展政策培训暨…

Linux版本Oracle工具,Linux下oracle可视化操作工具sqldeveloper安装与配置

一、Oracle SQL Developer 3.2.2 选择Linux RPM版本下载1、安装sqldeveloper,rpm -ivh sqldeveloper-3.2.20.09.87-1.noarch.rpm,安装完成后软件在/opt/sqldeveloper, 虽然在程序菜单中有sql-developer的图标,但单击并不能启动,估…

c++能干什么_「CG原画插画教程」学画画到底能干什么?

原标题:「CG原画插画教程」学画画到底能干什么?艺学绘小编收集整理了学画画到底能干什么?学画画到底能干什么?相信很多学画画的朋友们都被问过这个问题,那些对学画画有偏见的人,总觉得我们在“不务正业”。…

查看oracle空间使用率,Oracle 查看表空间使用率

1.查询不包含临时表空间的使用率SELECT Upper(F.TABLESPACE_NAME) "TablespaceName",D.TOT_GROOTTE_MB "Total(M)",D.TOT_GROOTTE_MB - F.TOTAL_BYTES "Used(M)",To_char(Round(( D.TOT_GROOTTE_MB - F.TOTAL_BYTES ) / D.TOT_GROOTTE_MB * 100,…

怎样设置电脑壁纸_怎样设置电脑的资料定时备份到移动硬盘里

怎样设置电脑的资料定时备份到移动硬盘里 写回答...安装FreeFileSync即可,功能有:自动备份、单向备份、双向备份、更新指定文件夹、增量更新、定时备份等。你安装后,添加一个批处理任务来执行将电脑的资料定时备份到移动硬盘。选:…

packetbeat oracle,packetbeat 无法启动

抓到了一些包,但是没有看到视频中的http的包:都是些UDP2018/08/12 10:46:27.756161 sniffer.go:145: INFO Resolved device index 1 to device: \Device\NPF_{5E472DB4-3BFB-4696-A0DF-4A1BA12EBEB3}2018/08/12 10:46:27.812161 beat.go:233: INFO packe…

appium自动化测试_Appium自动化测试入门教程No.1—— Appium介绍

(1)特点appium 是一个自动化测试开源工具,支持 iOS 平台和 Android 平台上的原生应用,web应用和混合应用。>>“移动原生应用”是指那些用iOS或者 Android SDK 写的应用(Application简称app)。>>“移动web应用”是指使用移动浏览器访问的应用…

linux 命令行看图片,骚操作:用终端打开图片

导读Linux 上有许多 GUI 图片浏览器。但我尚未听说或使用过任何在终端中显示图片的应用程序。幸运的是,我刚刚发现了一个可用于在终端中显示图像的名叫 FIM 的图像查看器。FIM 引起了我的注意,是因为与大多数 GUI 图片浏览器相比,它非常轻巧。…

python中使用什么命令进入帮助系统-python中os模块中文帮助

python中os模块中文帮助文档 文章分类:Python编程 python中os模块中文帮助文档 翻译者:butalnd 翻译于2010.1.7——2010.1.8,个人博客:http://butlandblog.appspot.com/ 注此模块中关于unix中的函数大部分都被略过,翻译主要针对WI…

linux 登入用户记录,linux记录所有用户登陆及执行过的命令脚本

第一个窗口[roothdss7-4 ~]# echo "historyUSERwhoamiUSER_IPwho -u am i 2>/dev/null| awk {print $NF}|sed -e s/[()]//gif [ "$USER_IP" "" ]; thenUSER_IPhostname ## 获取ip 并且存到变量中fiif [ ! -d /var/log/history ]; thenmkdir /var/…

线程被中断跟被阻塞有什么区别_宠物加盟店跟自营店有什么区别

宠物加盟店跟自营店有什么区别开宠物店是一个很有发展、很有市场前景的项目,特别是在这几年,已经迅猛发展。如果想加入宠物行业,利润、赚钱、前景都不用担心,只要有愿意做成的心,市场大环境不用担心。关于大家提出的宠…

linux装nvidia驱动没有图形界面,[转]Fedora 13下安装Nvidia显卡驱动的方法/Linux无法进入X Windows 图形界面的解决方法...

再试一试这个方法:[转自]http://www.myexception.cn/image/505352.htmlVirtualBox3.1.2安装Fedora12后无法启动图形界面问题VirtualBox真是个好东东,无缝模式集成进windows,一边能玩windows下的游戏啊,QQ啊,又可以不耽…

不超过20位的小数正则_意甲身价最贵的20位球星,国米多达7人超过尤文,夺冠成硬任务...

根据《德转网》的最新统计,在本赛季意甲身价排名前20位的球星当中,国际米兰俱乐部拥有多达7人,比起意甲霸主尤文图斯还要多出2人。这7位国米球星分别是卢卡库(意甲球员身价第一,8000万欧元)、马丁内斯(意甲球员身价第四、4000万欧…

mcp证书有什么用_建造师的行情怎么样呢?建造师证书有什么用?

近年来,一二级建造师报名人数的逐年递增。从2004年至今,从当初几万人报考到现在的几百万人报考,这些都说明了大家都意识到了建造师证书的重要性。因为要用到证书的地方太多了,建筑企业升级资质要求建造师证书、企业年检要求建造师…

linux环境变量命名规范,Linux就该这么学 -- 重要的环境变量

变量是计算机系统用于保存可变值的数据类型。在Linux中,变量名一般都是大写,这是一种约定俗成的规范,我们可以直接通过变量名称来提取到对应的变量值。用户执行一条命令,Linux系统一般分为4个步骤第一步:判断用户是否以…

realtek audio console无法连接rpc服务_RPC服务在游戏中的简单运用

作者:二周目赤出处:https://www.cnblogs.com/cr1719/p/13866841.html我们最开始做的游戏框架,多数都是client—>server—>db的模式,但是随着玩家数量的增加,一个server进程就会扛不住,需要多个进程服务于多个玩家。但是给定…

linux查询.gz日志,linux2-查日志

1.tail 显示文件内容的最后几行tail catalina.out查最后10行tail -f filename输出最后10行内容,同时监视文件的改变,只要文件有一变化就显示出来。tail -n 5 filename 或者 tail -5 filename输出文件最后5行的内容tail -nf catalina.out输出文件最后n行的…