目录

  • 绝对路径用什么符号表示?当前目录、上层目录用什么表示?主目录用什么表示? 切换目录用什么命令?
  • 怎么查看当前进程
    • ps是什么(快照状态,静态的)
      • 基本参数
      • 其他参数
      • ps显示的内容(默认显示)
    • watch是什么(实时监控,动态的)
    • top是什么(实时监控,动态的)
  • 查看文件有哪些命令
  • 列举几个常用的Linux命令(1个硬件+2个查看+2个操作)
    • 1. 查看硬件相关
      • 1. df(disk free查看磁盘大小)
    • 2. 查看系统相关
      • 1. ps、watch、top、htop(查看动态、静态进程,上文有讲)
      • 2. netstat(net:网络,主要查看TCP连接情况)
        • 1. 例如
      • 3. vmstat(vm:虚拟机,主要查看CPU、内存、进程)
    • 3. 查看文件相关
      • 1. ls(查看文件夹下的文件)
        • 默认显示的数据
        • 硬件连接数是什么
      • 2. cat、tac、more、less、head、tail、nl、tailf(查看文件的内容)
    • 4. 文件相关操作
      • 1. tar(文件压缩、解压)
        • 常用参数
        • 常用命令组合(后续再说)
      • 2. spilt(分割文件)
      • 3. rm -rf(文件删除)
      • 4. mv(文件移动)
    • 5. 程序相关操作
      • 1. nohup(后台运行程序)(no hang悬挂 up)
    • 6. 其他(暂不分类)
      • 1. lsof(有个印象就行)
      • 2. nc(瑞士军刀?是啥?)
  • 平时是怎么查看日志的
  • JVM相关的命令
    • 1. jstat命令
      • 1. jstat -gc pid
      • 2. jstat -gccapacity pid
      • 3. jstat -gcutil pid
      • 4. jstat -gcnew pid
      • 5. jstat -gcnewcapacity pid
      • 6. jstat -gcold pid
      • 7. stat -gcoldcapacity pid
      • 8. jstat -gcpermcapacity pid
    • 2. jstack命令
    • 3. jmap命令
  • 服务器CPU100%的排查过程
    • 1. jstack -l 线程PID命令 的作用
  • 如何在服务器上调用接口(curl命令)

绝对路径用什么符号表示?当前目录、上层目录用什么表示?主目录用什么表示? 切换目录用什么命令?

  • 绝对路径: 如/etc/init.d
  • 当前目录和上层目录: ./ …/
  • 主目录: ~/
  • 切换目录: cd

怎么查看当前进程

参考原文并整理了一下:Linux进程之如何查看进程详情?

ps是什么(快照状态,静态的)

ps是显示瞬间进程的状态,并不动态连续

基本参数

  • -A :显示所有进程
  • -e:也是显示所有进程
  • -a :显示现行终端机下的所有进程,包括其他用户的进程;(最常用
  • -u :过滤用户
  • -x :通常与 a 这个参数一起使用,可列出较完整信息。
  • -C:过滤进程名
  • -l:显示完整的PID
  • -f:显示更全的信息
  • -U:也是过滤真实用户(这里的用户是指实际创建改进程的用户,和-u区别开来)
  • |是管道!!,后面一般跟着一些筛选,如grep、head等等(重要,我悟出来的!)
  • | grep: 过滤指定字符串用的

其他参数

  • -aux:进程结果根据CPU和内存筛选
  • | -less:减少显示的数据
  • -sort -pcpu:CPU使用率来降序排序
  • -sort -pmen:内存使用率来降序排序(men是内存:Memory的前缀)
  • | head -n 10:通过管道显示前10个结果(管道指的是这个竖杠**|??head作用是限制条数;-n**)
  • -L 1001(PID值):显示特定进程(PID:1001)的线程信息
  • -axjf或把ps替代为pstree:以树形结构显示进程
  • -eo pid,user,args-e:显示所有进程信息;-o:参数控制输出;pid,user,args:显示PID,运行应用的用户和该应用):查看有谁登入了你的服务器(这个有点长,比较难记,知道有这功能就行)

小tips:可以用man ps来查看ps文档(命令这么多,不常用的话很容易记不住)

ps显示的内容(默认显示)

  • PID: 运行着的命令(CMD)的进程编号
  • TTY: 命令所运行的位置(终端)
  • TIME: 运行着的该命令所占用的CPU处理时间
  • CMD: 该进程所运行的命令

白话文:1个ID + 3个命令相关(命令执行时候的位置、命令执行耗时、什么命令)

watch是什么(实时监控,动态的)

watch命令操作其实就是在ps命令的基础上,把ps命令包起来,使其变成动态

  • watch -n 1 ‘ps -a’:-n:刷新频率,这里是每1s刷新一次;ps -a:这里可以随便写,我只写了最简单的

top、htop的比较:好处是可以自定义显示的内容

top是什么(实时监控,动态的)

top可以对进程进行实时监控

查看文件有哪些命令

  • cat:从第一行开始,显示所有内容(如果是日志的话显示不全的,要加过滤,cat后面加**-n可以显示行号**)
  • tac:从最后一行开始,显示所有内容(和cat反一下,卧槽,名字也刚好反一下!)
  • more(常用):根据窗口大小,一页一页的显示文件内容(要记得用
  1. 下一行按回车键
  2. 下一页按空格键Ctrl + F(F代表Forward向前的意思)
  3. 上一页Ctrl + B(B代表Back向后的意思)
  4. 按Q键:退出查看页面
  5. 按=键:输出当前行的行号(配合head、tail使用,可以读取对应行的上下文)
  6. 按:F键 输出文件名和当前行的行号(这里不太清楚是一个F还是冒号 + F,等待实际验证一下)
  7. 按V键:调用vi编辑器
  8. 按!键:命令调用Shell,并执行命令
  • less(常用):和more类似,但其优点可以往前翻页,还可以搜索字符
  1. 上一页按PgUp键
  2. 下一页按PgDn键
  3. less + 要搜索的字符:可以实现数据过滤
  • head:只显示文件的前几行(语法:head [n number] 文件名,例如head 20 log.txt)
  • tail:只显示文件的后几行(和head相反),tail -f 可以查看实时日志(从文件尾部开始读
  • nl:类似于cat -n,显示时输出行号
  • tailf:类似于tail -f,也可以查看实时日志,区别是tailf是从文件头开始读

比较常用的:more、less、tail -f

参考原文:linux查看文件命令有哪些

列举几个常用的Linux命令(1个硬件+2个查看+2个操作)

1. 查看硬件相关

1. df(disk free查看磁盘大小)

查看磁盘大小

2. 查看系统相关

1. ps、watch、top、htop(查看动态、静态进程,上文有讲)

2. netstat(net:网络,主要查看TCP连接情况)

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

1. 例如

找到端口号为8080的进程: netstat -p tcp -ano |findstr :8080
然后删除这个进程:taskkill -PID 35729 -F

35729 是8080端口对应的PID进程号

3. vmstat(vm:虚拟机,主要查看CPU、内存、进程)

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

思考:watch + ps 搭配使用是不是也能实现

3. 查看文件相关

1. ls(查看文件夹下的文件)

默认显示的数据

权限、硬件连接数、所属用户、所属用户组、文件大小、文件修改日期、文件名称

硬件连接数是什么

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

好像有点印象,是不是引用数目?其他地方引用到了我这个文件的次数

2. cat、tac、more、less、head、tail、nl、tailf(查看文件的内容)

4. 文件相关操作

1. 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下所有文件

2. spilt(分割文件)

将文件分割为数个。

白话文:日志太多了,数据拆分?

3. rm -rf(文件删除)

4. mv(文件移动)

5. 程序相关操作

1. nohup(后台运行程序)(no hang悬挂 up)

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

nohup command >X.file 2 >&1 &

后台启动程序,指定日志输出的文件(命令看不懂没关系,知道这个东西就好)

6. 其他(暂不分类)

以下命令有个印象就可以了:

1. lsof(有个印象就行)

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

2. nc(瑞士军刀?是啥?)

快速构建网络链接。常用来调试客户端程序

参考链接:盘点20个面试中常用的Linux命令

平时是怎么查看日志的

cat、tac、more、less、head、tail、nl、tailf直接甩脸上

JVM相关的命令

原文链接:java死锁怎么用jvm调试_jvm 内存dump、gc查看、线程死锁,jmap、jstack、jstat

1. jstat命令

查看堆栈信息、三代(年轻代、老年代、永久代)的信息以及占有量、GC等

1. jstat -gc pid

可以显示gc的信息,查看gc的次数及时间,包括young gc的次数,young gc的时间,full gc的次数,full gc的时间,gc的总时间

2. jstat -gccapacity pid

显示JVM内存中三代(young,old,perm)对象的使用和占用大小

3. jstat -gcutil pid

统计gc信息统计

4. jstat -gcnew pid

年轻代对象的信息

5. jstat -gcnewcapacity pid

年轻代对象的信息及其占用量

6. jstat -gcold pid

old代对象的信息

7. stat -gcoldcapacity pid

old代对象的信息及其占用量

8. jstat -gcpermcapacity pid

perm对象的信息及其占用量

2. jstack命令

查看JVM当前的线程信息,如线程状态、死锁情况等等

3. jmap命令

查看JVM中各种对象的数量,所占空间
值得一提的是这个命令可以到处一份binary heap dump的bin文件,这个文件能够直接用Eclipse Memory Anayliser来分析,并找出潜在的内存泄漏的地方。

白话文:主要查内存泄漏的

服务器CPU100%的排查过程

  1. 使用top -c命令实时查看CPU占用情况,找到占用CPU最高的线程PID
  2. 使用jstack -l 线程PID命令

1. jstack -l 线程PID命令 的作用

查看线程状态,使用的垃圾回收算法,死锁检测

如何在服务器上调用接口(curl命令)

格式:

curl "需要调用的url"  -H "Content-Type: application/json" -X POST -d 'json请求体的内容'
  1. -H或**–header**:指定请求头部信息,比如Json格式类型
  2. -X或**–request**:指定请求类型为GET或者POST
  3. -d或**–data**:json请求体的内容

【八股文】Linux篇相关推荐

  1. 【B站视频教程笔记】基于VSCode和CMake实现C/C++开发 | Linux篇(gcc/g++)(安装、配置、使用详细教程)(VSCode教程)(CMake教程)(精!)

    基于VSCode和CMake实现C/C++开发 | Linux篇 文章目录 目录结构 文件编辑 vim(编辑器之神,linux里可以畅通无阻,必学,但不是现在!) 安装GCC和GDB g++编译过程 ...

  2. C语言-apache mod(模块开发)-采用apxs开发实战(centos7.2 linux篇)

    C语言-apache mod(模块开发)-采用apxs开发实战(centos7.2 linux篇) 名词解释:apxs apxs is a tool for building and installi ...

  3. Netbackup设备管理之Linux篇,Netbackup设备管理之Linux篇

    Netbackup设备管理之Linux篇 在备份软件的使用过程中,关于磁盘.磁带的治理一样会花费储备治理员专门大比例的时刻和精力.因此,关于设备的治理的方便程度,是衡量一个备份软件好坏的重要的标准.N ...

  4. Linux篇:Shell脚本实现Gitlab双备份

    01 前言 最近成功从架构组拿到了Gitlab的管理权限,第一件事就是想着如何备份,以防数据丢失背大锅,于是在网上搜索一番,发现一段非常赞的备份脚本,记录照着操作一下: 参考文章:https://bl ...

  5. JAVA JNI调用科大讯飞离线语音合成(Linux篇)

    JNI调用科大讯飞离线语音合成(Linux篇) 背景:之前已经介绍过JNI调用科大讯飞离线语音合成(Windows篇),今天我们接着聊一聊在Linux系统中如何使用科大讯飞离线语音合成,我们这里以(u ...

  6. 【SemiDrive源码分析】【X9芯片启动流程】21 - MailBox 核间通信机制介绍(代码分析篇)之 Mailbox for Linux 篇

    [SemiDrive源码分析][X9芯片启动流程]21 - MailBox 核间通信机制介绍(代码分析篇)之 Mailbox for Linux 篇 一.Mailbox for Linux 驱动框架分 ...

  7. 恢复被删除的文件-linux篇

    恢复被删除的文件-linux篇 http://blog.chinaunix.net/u2/83058/showart_1404769.html 本文转自IBM中国上的文档 [http://www.ib ...

  8. linux下使用geant4指南,四步轻松安装Geant4 (Linux篇) | 入门

    最近开始为订阅号"Geant4不完全学习指南"写一些文章. 正文开始. 四步轻松安装Geant4 (Linux篇) | 入门 软件版本:Ubuntu16.04,Geant4.10. ...

  9. 【Linux篇】kali Linux系统一次性安装软件包

    [Linux篇]kali Linux系统一次性安装软件包 ​ 在Windows应用商店安装的kali linux是一个最小最基本的版本,里面很多工具都需要自己按需安装,不想麻烦的也可一次性安装好-[s ...

  10. Linux磁盘分区论文3000字,磁盘分区对齐详解与配置 – Linux篇

    磁盘分区对齐详解与配置 – Linux篇 介绍 许多系统管理员可能不曾听过磁盘分区对齐之说,甚至一些有经验的存储管理员对分区对齐也不甚了解.磁盘分区不对齐现象是什么,为什么会造成比较严重的性能下降?相 ...

最新文章

  1. Centos 6.4下 MySQL配置主从服务(集群)
  2. 基于堆栈的虚拟机实现
  3. 【Linux基础】kiickstart无人值守安装
  4. 简易的实现对象内存池
  5. 避障跟随测距c语言程序,红外避障小车c语言程序.pdf
  6. mysql doen s exist_Mysql中大小写敏感问题导致的MySql Error 1146 Tabel doen’t exist错误
  7. 了解一下JAVA中的NIO模块
  8. Android Studio 4.0 / 4.0.1 无法创建Activity 问题
  9. MySQL破log_MySQL中的binlog相关命令和恢复技巧
  10. CentOS 7完全卸载MySQL
  11. 国科大.模式识别与机器学习.期末复习笔记手稿+复习大纲
  12. matlab 作图设置线宽,改matlab的绘图大小、字号、线宽
  13. hive 漫威the_漫威系列的观看顺序
  14. 企业级网络架构(搭建)学习笔记(网管)
  15. 节点英雄榜之脑海链:构建区块链化的知识变现经济生态
  16. Win10强制更新关闭方法
  17. mtklog结构及分析
  18. 三元组损失(Triplet loss)
  19. [BZOJ4763][P3603]雪辉[手写bitset+静态分块]
  20. 调用函数printchs输出星号图

热门文章

  1. 虚拟机中Linux配置java-jdk和tomcat
  2. 关于isl28022电源芯片的校准寄存器的配置问题
  3. java 百万数据查询_java一次性查询几十万,几百万数据解决办法
  4. KDD‘20 | 如何建模互联网水军的对抗行为?
  5. 视频教程-实用数据分析:数据分析师从小白到精通-大数据
  6. 基于单片机的心率脉搏检测电路设计(#0200)
  7. mysql5.6配置文件详解(二)
  8. [翻译]:SQL死锁-阻塞探测
  9. 精选6个超实用的Word技巧,每一个大有用处!
  10. 【2021-07-31 更新】【梳理】简明操作系统原理 第十九章 身份认证和访问控制(docx)