0.抓包
tcpdump -i any -s0 -vw ./xxx.pcap
tcpdump -s 0 -i any -vw ./eee.pcap

1.用到docker的情况下抓包
先查到容器pid(ps -ef | grep)
nsenter -n -t pid tcpdump -i any -s0 -vw /root/dump/test.pcap

2.模拟http请求
nc -v host port
复制请求 按回车

3.用JDK生成jks文件
keytool -genkey -keysize 2048 -validity 365 -keyalg RSA -keypass 123456 -storepass 123456 -keystore wss.jks

4.curl发送请求
可以测试本地请求是否可以到达目标服务器
例子(默认get请求,可以制定post请求):
curl zykkk.online
curl http://zykkk.online
curl -X post https://www.zykkk.online

存储响应到文件:
curl http://zykkk.online >> curl.html
curl -o curl.html http://www.zykkk.online

下载文件:
curl -O https://1abd935c-inms-cloud-photo.oss-cn-beijing.aliyuncs.com/2023/06/28/644acf17e362403f9ee82e22c515b9d5e021faa9203e4f5c9be5e141993535fe1.jpg
curl -o curl.jpg https://1abd935c-inms-cloud-photo.oss-cn-beijing.aliyuncs.com/2023/06/28/644acf17e362403f9ee82e22c515b9d5e021faa9203e4f5c9be5e141993535fe1.jpg

5.查询进程的端口号
netstat -tunlp | grep xxx ,该命令使用netstat网络查询命令,可以查到端口号、pid,再加上ps -ef| grep xxx命令,就可以找到某进程的端口

6.筛选服务器大文件
find -size +500M
+500M 表示大于
-500M 表示小于

7.输出重定向,将在屏幕展示的数据存放在文件中
命令:
命令 > 文件 将标准输出重定向到一个文件中(清空原有文件的数据)
命令 >> 文件 将标准输出重定向到一个文件中(追加到原有内容的后面)
命令 2> 文件 将错误输出重定向到一个文件中(清空原有文件的数据)
命令 2>> 文件 将错误输出重定向到一个文件中(追加到原有内容的后面)
命令 &>> 文件 将标准输出与错误输出共同写入到文件中(追加到原有内容的后面)

输入重定向,将键盘、文件或命令中内容展示在屏幕上
命令:
命令 < 文件 将文件作为命令的标准输入
命令 << 分界符 从标准输入中读入,直到遇见分界符才停止
命令 < 文件1 > 文件2 将文件1作为命令的标准输入并将标准输出到文件2

8.管道命令符
|
把前一个命令原本要输出到屏幕的信息当作后一个命令的标准输入
ll /etc/ | more
ps aux | grep bash

9.命令行通配符

通配符及其含义:
*	任意字符
?	单个任意字符
[a-z]	单个小写字母
[A-Z]	单个大写字母
[a-Z]	单个字母
[0-9]	单个数字
[[:alpha:]]	任意字母
[[:upper:]]	任意大写字母
[[:lower:]]	任意小写字母
[[:digit:]]	所有数字
[[:alnum:]]	任意字母加数字
[[:punct:]]	标点符号

10.转义字符

反斜杠(\):使反斜杠后面的一个变量变为单纯的字符。
单引号(' '):转义其中所有的变量为单纯的字符串。
双引号(" "):保留其中的变量属性,不进行转义处理。
反引号(` `):把其中的命令执行后返回结果。

11.别名alias,起一个简单的名字代替原有命令

别名定义只对当前的shell会话有效,如果需要在每个新的shell会话中都能使用别名,需要将别名定义添加到~/.bashrc或~/.bash_profile等配置文件中
用法举例:
输入zyk相当于输入后面这些命令
alias zyk='ps -ef|grep java'
输入lls执行两个步骤
alias lls='ls -l;ls -a' 

12.环境变量
linux命令执行时的过程大致是:
1.判断用户是否以绝对路径或相对路径的方式输入命令(如/bin/ls),如果是绝对路径则直接执行,否则进入第2步继续判断
2.Linux系统检查用户输入的命令是否为“别名命令”,即用一个自定义的命令名称来替换原本的命令名称
3.Bash解释器判断用户输入的是内部命令还是外部命令。内部命令是解释器内部的指令,会被直接执行;而用户在绝大部分时间输入的是外部命令,这些命令交由步骤4继续处理
4.系统在多个路径中查找用户输入的命令文件,而定义这些路径的变量叫作PATH,作用是告诉Bash解释器待执行的命令可能存放的位置,然后Bash解释器在这些位置中逐个查找。

PATH是由多个路径值组成的变量,每个路径值之间用冒号间隔,对这些路径的增加和删除操作将影响到Bash解释器对Linux命令的查找。
理论上可以将.目录添加到PATH,但是这样会导致其他目录中有和真正的命令的同名文件的话,可能是木马文件,有很大风险

[root@~]# echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/java/bin:/root/bin

linux系统内置了一下变量比如PATH、HOME、SHELL等,我们可以自定义变量
[root@~]# WORKDIR=/home
[root@~]#
[root@~]# echo $WORKDIR
/home
这样只是单用户的变量,命令前面加上export,可以成为全局的。unset WORKDIR可以将变量取消。
终端设置的变量会在重启后失效,如果想永久使用,需要写在.bashrc或者.bash_profile文件中

13.查看磁盘信息
lshw命令:lshw命令用于显示系统的硬件信息,包括硬盘。lshw -class disk 命令将显示系统中所有硬盘的详细信息,包括硬盘的数量、型号和容量
[root@ /]# lshw -class disk
*-disk
description: ATA Disk
product: HS-SSD-S210M/PLP
physical id: 0.0.0
bus info: scsi@0:0.0.0
logical name: /dev/sda
version: 2047
serial: AC0394140
size: 119GiB (128GB)
capabilities: partitioned partitioned:dos
configuration: ansiversion=5 logicalsectorsize=512 sectorsize=512 signature=8834876d

lsblk命令:lsblk命令用于列出系统中的块设备,包括硬盘和其他存储设备。lsblk 命令显示系统中所有块设备的信息,包括硬盘的数量和大小
[root@ ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 119.2G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 7.6G 0 part [SWAP]
├─sda3 8:3 0 1K 0 part
└─sda5 8:5 0 20G 0 part /

fdisk命令:fdisk命令用于处理硬盘分区,但它也可以用来查看系统中的硬盘数量。fdisk -l 命令将显示系统中所有硬盘的详细信息,包括硬盘的数量、大小和分区情况。
[root@ /]# fdisk -l
Disk /dev/sda: 119.24 GiB, 128035676160 bytes, 250069680 sectors
Disk model: HS-SSD-S210M/PLP
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x8834876d

Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 2099199 2097152 1G 83 Linux
/dev/sda2 87406592 103266303 15859712 7.6G 82 Linux swap / Solaris
/dev/sda3 103266304 250068991 146802688 70G 5 Extended
/dev/sda5 103268352 145211391 41943040 20G 83 Linux

14.开机后dhcp没有获取到ip
动态获取 IP,并且显示过程:dhclient -v