原文链接:https://mp.weixin.qq.com/s/QkqHexs_kOgy_5OwbwyFww

建议点击原文链接查看

不同平台linux客户端连接工具分享:

windos终端神器:SSH,Xshell,CRT

官网下载 :https://xshell.en.softonic.com/

MAC终端神器:iterm2——告别黑白

官网下载:https://www.iterm2.com/

实战中最最常用的linux命令速查,此文仅整理命令标注用途,每个命令具体怎么用可以man一下,不要走开,内容精彩,最后送上几个最最最最实用的工具!

ps -ef|grep 服务名称 如ps -eH|grep nginx

最最最常用命令,检查服务是否有起来

ll -l /proc/10645

小伙伴如果不知道服务路径在哪里,可以用该命令根据进程查路径

ls -lht

查看文件大小kb

ls -lR | grep "^-"| wc -l

统计文件夹下文件个数,包括子文件

ls -lR | grep "^d"| wc -l

统计文件夹下目录个数,包括子目录

du -sh *

很实用的功能,可以汇总查看文件夹的大小,-s表示汇总,-h表示以KB, MB, GB, TB格式进行人性化显示

tail 、tac、nl 、more、less、head、cat 、od

7.1 cat:由第一行开始显示档案内容

7.2 tac:从最后一行开始显示,可以看出 tac 是 cat 的反向显示!

7.3 nl:显示的时候,随便输出行号

7.4 more:一页一页的显示档案内容

7.5 less 与 more 类似,但是比 more 更好的是,可翻页

7.6 head:查看头几行7.7 tail:查看尾几行

7.8 od:以二进制的方式读取档案内容!

最常使用的显示档案内容的指令可以说是 cat ,more 及 less 了!

8.vim

8.1 i、I、a、A、o、O、r和R中均可进入编辑状态,记住一种即可

8.2 yy+p 复制光标所在的行记录并粘贴在下一行

8.3 dd 删除光标所在行的记录

8.4 x 删除光标后面的一个字符

8.5 :set nu 即是在vi命令下操作设置行号的

8.6 :set nonu 不显示行号

8.7 翻页(屏)移动:ctrl+F(移动至下一屏幕), ctrl+B(移动至上一屏幕), ctrl+D(移动至下半屏幕), ctrl+U(移动至上半屏幕)

8.8 【替换与查找】:/chen :查找出文本中包含“chen”字符的所在行的位置 等于”:?chen"这个命令w who whoami which whereis

8.9 Vim 编辑完文件,按ctrl+c,退出编辑状态,再按大写字母:ZZ,wq!,x!即可保存并即退出

还有很多可使用的命令但常用的无非是增删改存!

nvidia-smi

查看显存 如watch -n 5 nvidia-smi # 每6秒刷新一次

tcpdump -i any host 192.168.1.91 and port 5061

linux下抓tcp\http包等

tcpdump -i any host 192.168.1.13 -w 1.cap

linux下抓tcp\http包,并保存

top -bi -d 1|tee top1.log

监控cpu、内存,并且保存

ifstat -tT |tee ifstat.log

监控网络带宽,并且保存

iostat -xm 1|tee iostat.log

监控磁盘io,并且保存

iftop

命令获取网卡的实时流量数据

ifconfig -a

查看要监控的网卡名

netstat -an|wc -l

查看连接数

ulimit

在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制(这是因为系统为每个TCP连接都要创建一个socket句柄,每个socket句柄同时也是一个文件句柄)。例如:一个redis程序,只启动一个进程,则只能打开1024个文件(默认1024)(1024个tcp连接=1024个socket连接句柄=1024个文件句柄)

18.1 ulimit -a 可以查看当前系统的所有限制值

18.2 ulimit -n 可以查看当前的最大打开文件数

修改最大打开文件数方式

18.3 使用 ulimit -n 65535 可即时修改,但重启后就无效了

18.4 在/etc/rc.local 中增加一行 ulimit -SHn 65535

18.5 在/etc/profile 中增加一行 ulimit -SHn 65535

18.6 在sudo gedit /etc/security/limits.conf最后增加如下两行记录* soft nofile 65535* hard nofile 65535

具体使用哪种,试试哪种有效吧

lsof |grep deleted

有文件被删除,而进程还活着,因而造成还占用空间的现象。可以通过命令 lsof |grep deleted 来进行查看

查询出可清理文件,直接清理:lsof |grep delete | grep -v grep | awk '{print $2}' | xargs kill -9

经常使用nohup command &命令形式来启动一些后台程序,比如一些java服务:nohup java -jar xxxx.jar &

nohup java -jar xxxx.jar >/dev/null 2>&1 &

为了不让一些执行信息输出到前台(控制台),我们还会加上刚才提到的>/dev/null 2>&1命令来丢弃所有的输出

rm -rf 文件或目录

强制删除文件或目录,慎用

rm proxy_cache/im/* -r

仅删除目录下的内容

pwd

显示当前的目录的绝对路径

mkdir zou

创建目录 mkdir -p创建递归目录 mkdir a b c 创建平级目录

rmdir

删除空目录 rm -f 强行删除上一级目录下的目录下的所有内容 rm -rf 删除目录

mv /home/a /opt/zou/

移动或修改目录名字 移动mv -i

cp -rp /home/zou /home

将某个目录下的所有内容复制到所想复制的目录下

date -s "2007-08-03 14:15:00"

用户修改系统时间,同时修改日期时间,注意要加双引号,日期与时间之间有一空格

touch zou.txt

创建文件名 touch -t 修改文件的时间

ln -s /bin/less /usr/local/bin/less

创建软链接 ln -d 创建硬链接,非常重要命令,功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s,具体用法是ln -s 源文件 目标文件

chmod rw-r--r--

即等于数字644的权限 chmod 777给用户,用户所在组及其它用户都授予读,写,执行的权限

shoudown -r

重启系统

shoudown -h now

立即关机

shoudown -h -t 120

2分钟后关机

halt -d

关闭系统,但不留下纪录

wc testfile

testfile文件的统计信息

netstat -ano |grep 80 或 netstat -upntl |grep 80

显示出系统当前正在使用的端口号

uname -r

显示系统内核版本信息

kill -9 3626

强行杀死进程“3626”

tar -cvf a.tar.z a/

添加压缩 为tar.z 对应 tar -xvf 解压

tar -zcvf a.tar.gz a/

添加压缩 为tar.gz 对应tar -zxvf 解压

gzip

文件名 直接将源文件压缩成 .gz 包=gzip -9

gunzip

直接将压缩包解压

top 或 htop

管理进程时通常要借助一些工具,比较常用的就是ps和top了,不过CentOS还为我们提供了一个更加强大的工具htop,需自行安装

46.1 top #动态进程显示 top -d 查看5s刷新系统资源使用情况(cpu,内存,swap)

46.2 htop 是Linux系统中的一个互动的进程查看器,一个文本模式的应用程序(在控制台或者X终端中),需要ncurses。

46.3 与Linux传统的top相比,htop更加人性化。它可让用户交互式操作,支持颜色主题,可横向或纵向滚动浏览进程列表,并支持鼠标操作。

与top相比,htop有以下优点:

[1] 可以横向或纵向滚动浏览进程列表,以便看到所有的进程和完整的命令行。

[2] 在启动上,比top 更快。

[3] 杀进程时不需要输入进程号。

[4] htop 支持鼠标操作。

[5] top 已经很老了。

文件对比和局域网内传输
文件对比
diff a.yaml b.yaml
#表示两个文件对比有什么不同的
文件传输方法
nc -l 14444 > smpagent_deploy.tar.gz
接收端:先在接收端执行以下命令
nc 192.168.100.144 14444 < smpagent_deploy.tar.gz
再通过发送端执行,即可传输完成
scp -i /Users/test_key -P 10022 test@12.26.1.2:/home/zou
使用scp将本地文件上传到服务器中
scp -P2208 -r xxxx@10.0.xx.xx:/home/data.txt /Users/Desktop
从远程文件下载到本地中

补充说明:

nc是netcat的简写,有着网络界的瑞士军刀美誉。因为它短小精悍、功能实用,被设计为一个简单、可靠的网络工具。

nc的作用

[1] 实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口

[2] 端口的扫描,nc可以作为client发起TCP或UDP连接

[3] 机器之间传输文件

[4] 机器之间网络

测速Iperf 是一个网络性能测试工具:iperf -c 192.168.2.8 -t 20

Screen是一款由GNU计划开发的用于命令行终端切换的自由软件,使用screen,防止断网导致异常退出

screen -S name #可创建带名字的屏幕

screen -d -r #查看所有屏幕

screen -d -r 进程号 #可进入该屏幕

Detached -- 代表屏幕在后台运行没有被打开

Attached -- 代表有人进入了

"ctrl" + "D" + "A" -- 退出目前屏幕(不会杀死该进程),"ctrl + c" 退出屏幕内的进程;exit:杀死该屏幕

以上均是实战中较实用的小工具,是根据经验整理,如有不对,可能存在一些难免的错误。

Linux上,最常用的一批命令解析【10年精选】的更多相关文章

  1. 【转帖】Linux上,最常用的一批命令解析(10年精选)

    Linux上,最常用的一批命令解析(10年精选) https://juejin.im/post/5d134fbfe51d4510727c80d1 写的挺好呢 Linux这么多命令,通常会让初学者望而生 ...

  2. Linux上,最常用的一批命令解析(10年精选)

    Linux这么多命令,通常会让初学者望而生畏.下面是我结合日常工作,以及在公司的内部培训中,针对对Linux不是很熟悉的同学,精选的一批必须要搞懂的命令集合.任何一个命令其实都是可以深入的,比如tai ...

  3. Apache RocketMQ在linux上的常用命令

    Apache RocketMQ在linux上的常用命令 进入maven安装后的rocketmq的bin目录  1.启动Name Server  2.启动Broker 3.关闭Name Server 4 ...

  4. Linux运维常用150个命令

    Linux运维常用150个命令 转载自:www.cnblogs.com/bananaaa/p/7774467.html 命令 功能说明 线上查询及帮助命令(2个) man 查看命令帮助,命令的词典,更 ...

  5. Linux 上的常用文件传输方式介绍与比较

    ftp ftp 命令使用文件传输协议(File Transfer Protocol, FTP)在本地主机和远程主机之间或者在两个远程主机之间进行文件传输. FTP 协议允许数据在不同文件系统的主机之间 ...

  6. Linux学习之常用文件处理命令(一)

    (一)文件命名规则 (二)常用文件处理命令 1.ls命令 2.cd命令 3.pwd命令 4.mkdir命令 5.touch命令 6.cp命令 7.mv命令 8.rm命令 9.cat命令 10.more ...

  7. linux 执行远程linux上的shell脚本或者命令以及scp 上传文件到ftp--免密码登陆

    场景:在linux A 上执行Linux B上的shell脚本和命令 步骤1.设置ssh免登陆 1.SSH无密码登录 # 本地服务器执行(A机器):生成密钥对 ssh-keygen -t dsa -P ...

  8. Linux下最常用的Shell命令的介绍

    Shell基础: 你可以通过打开Linux的terminal(终端)来执行Shell命令.Shell的种类有很多种,例如CSH,Bourne Shell,Korn Shell.在现在的大多数Linux ...

  9. 初窥Linux 之 最常用20条命令

    玩过Linux的人都会知道,Linux中的命令的确是非常多,但是玩过Linux的人也从来不会因为Linux的命令如此之多而烦恼,因为我们只需要掌握我们最常用的命令就可以了.当然你也可以在使用时去找一下 ...

随机推荐

  1. c语言-----劫持自己02

    在上一节 c语言-----劫持原理01 已经叙述了劫持原理,下边正式进入劫持实战 1. 需要实现的功能 在c语言中 system("notepad") 可以打开一个记事本 syst ...

  2. MyBatis配置项--配置环境(environments)--数据源(dataSource)

    数据源(dataSource) dataSource元素使用标准的JDBC数据源接口来配置JDBC连接对象的资源. ·许多MyBatis的应用程序会按示例中的例子来配置数据源.虽然是可选的,但为了使用 ...

  3. INTERVIEW #2

    吐槽下ZZ的面试安排:面试时间12:30不说了,周围没有饭店,中午就没吃饭...不像其他公司给每个人安排不同的面试时间,这样可以节约大家的时间,SPDB是把一大批人都安排在了12:30,而且面试是5个 ...

  4. 数学--博弈论--巴什博奕(Bash Game)

    终于也轮到我做游戏了,他们做了好几个月的游戏了. 巴什博弈: 两个人做游戏,取石子,一个人最多可以可以取M个,至少取1个,最后取完的赢. 显然,如果n=m+1,那么由于一次最多只能取m个,所以,无论先 ...

  5. python学习笔记-零碎知识点

    1. 绝对值 abs(-4) 结果: 4 2.

  6. RabbitMQ|异步

    目录 RabbitMQ|异步 1 概念|异步 1.1 同步与异步 1.2 比喻 2 生产者消费者设计模式 3 RabbitMQ介绍 3.1 主流消息队列比较: 3.2 RabbitMQ安装(mac电脑 ...

  7. STM32 Cube之旅-尝试新的开发方式

    尝试使用Cube进行一些开发学习,这里对此做一个梗概,先有一个全面的了解. 文章目录 Cube全家桶 CubeMX CubeIDE CubeProg 结语 Cube全家桶 曾几何时,ST刚推出Cube ...

  8. 计算机组成及系统结构-第十章 输入输出(I/O)系统

    输入输出(I/O)系统 一.概述 1.输入输出设备的编址 2.设备控制器(I/O接口)的基本功能 3.I/O设备数据传送控制方式 二.程序中断输入输出方式 1.中断的定义 2.中断的作用 3.中断的产 ...

  9. 学习ASP.NET Core(05)-使用Swagger与Jwt授权

    上一篇我们使用IOC容器解决了依赖问题,同时简单配置了WebApi环境,本章我们使用一下Swagger,并通过Jwt完成授权 一.Swagger的使用 1.什么是Swagger 前后端分离项目中,后端 ...

  10. SQL server 的使用中的subString() 和 charIndex() 实现筛选 某个字段的部分数据

    subString(): SUBSTRING ( expression , start , length ) 参数expression 是字符串.二进制字符串.text.image.列或包含列的表达式 ...