Linux 常用命令

1、wget

wget命令的使用
语法格式
wget [options] [url]
  • 使用 -O 选项以其他名称保存下载的文件
wget -O redis.tar.gz https://download.redis.io/releases/redis-6.0.8.tar.gz
  • 使用 -P 选项将文件下载到指定目录
wget -P /usr/software https://download.redis.io/releases/redis-6.0.8.tar.gz
  • 使用 -c 选项断点续传

当我们下载一个大文件时,如果中途网络断开导致没有下载完成,我们就可以使用命令的-c选项恢复下载,让下载从断点续传,无需从头下载。

wget -c https://download.redis.io/releases/redis-6.0.8.tar.gz
  • 使用 -b 选项在后台下载

我们可以使用-b选项在后台下载文件:

wget -b https://download.redis.io/releases/redis-6.0.8.tar.gz
  • 使用 -i 选项下载多个文件

如果先要一次下载多个文件,首先需要创建一个文本文件,并将所有的url添加到该文件中,每个url都必须是单独的一行。

vim download_list.txt

然后使用-i选项,后跟该文本文件:

wget -i download_list.txt
  • 使用 --tries 选项增加重试次数

如果网络有问题或下载一个大文件有可能会下载失败,wget默认重试20次,我们可以使用-tries选项来增加重试次数。

wget --tries=40 https://download.redis.io/releases/redis-6.0.8.tar.gz
  • 通过FTP下载如果要从受密码保护的FTP服务器下载文件,需要指定用户名和密码,格式如下:
wget --ftp-user=<username> --ftp-password=<password> url

2、tar

命令格式

tar[OPTIONS][FILE]...
-c--create
    建立新的档案
-C,--directory=DIR
    将 tar 的工作目录从当前目录改为指定目录。该选项对顺序敏感,即影响其后的所有选项
-f,--file=ARCHIVE
    指定存档文件
-x,--extract,--get
    从档案提取文件  
-z,--gzip,--gunzip,--ungzip
    通过 gzip 命令压缩或解压档案
-v,--verbose
    显示指令执行过程
-j, --bzip2 通过 bzip2 命令压缩或解压缩档案

-c和-x是对立的

  • 将目录 /home/stud/wang 打包成 lvlv.tgz,同时使用 gzip 进行压缩
tar –czvf lvlv.tgz /home/stud/wang
  • 将目录 /home/stud/wang 打包成 lvlv.tbz2,同时使用 bzip2 进行压缩。
tar –cjvf lvlv.tgz2 /home/stud/wang
  • 将指定目录下的目录或文件进行打包。
tar –czvf wang.tar.gz -C /home/stud/wang
  • 将档案 lvlv.tbz2 还原为原目录,同时使用 bzip2 进行解压缩
tar -xjvf lvlv.tbz2
  • 将 lvlv.tgz 解包到指定目录,同时使用 gzip 进行解压缩
tar -xzvf lvlv.tgz -C DIR
  • 只查看档案的文件列表,不进行解包
tar -tzvf wang.tar.gz

3、du

  •  查看当前命令下的所有隐藏目录空间各个大小总和
du -sh .[^.]* */

 

4、curl

  • 下载文件到指定的文件小写-o,大写 -O 保存文件和它的原始文件名
curl https://rumenz.com/1.html -o 2.html
  • 只打印响应头
curl -I https://rumenz.com

HTTP/1.1 200 OK
Server: openresty/1.19.3.1
Date: Wed, 02 Jun 2021 13:37:41 GMT
Content-Type: text/html; charset=utf-8
Connection: keep-alive
  • 显示请求头和网页内容
curl -i https://json.im/1.txt

HTTP/1.1 200 OK
Server: openresty
Date: Wed, 02 Jun 2021 14:02:30 GMT
Content-Type: text/plain
Content-Length: 8
Last-Modified: Wed, 02 Jun 2021 14:00:57 GMT
Connection: keep-alive
ETag: "60b78f19-8"
Accept-Ranges: bytes

123
456
  • 直接显示网页内容
curl -l https://json.im/1.txt
  • -L参数会让 HTTP 请求跟随服务器的重定向。curl 默认不跟随重定向。
curl -L -d 'rumenz=123' https://json.im/
  • 使用curl模拟post请求,--data-urlencode 参数等同于-d,发送 POST请求的数据体,区别在于会自动将发送的数据进行 URL 编码.

curl -d 'login=rumenz' -d 'password=123' -X POST  https://json.im/login

 

5、tcmdump

  • 参数
-A 只使用 ASCII 打印报文的全部数据,不要和 -X 一起使用,获取 http 可以用 tcpdump-nSA port80

-b 在数据链路层上选择协议,包括 ip, arp, rarp, ipx 等

-c 指定要抓取包的数量

-D 列出操作系统所有可以用于抓包的接口

-i 指定监听的网卡, -i any 显示所有网卡

-n 表示不解析主机名,直接用 IP 显示,默认是用 hostname 显示

-nn 表示不解析主机名和端口,直接用端口号显示,默认显示是端口号对应的服务名

-p 关闭接口的混杂模式

-P 指定抓取的包是流入的包还是流出的,可以指定参数 in, out, inout 等,默认是 inout

-q 快速打印输出,即只输出少量的协议相关信息

-s len 设置要抓取数据包长度为 len,默认只会截取前 96bytes 的内容, -s0 的话,会截取全部内容。

-S 将 TCP 的序列号以绝对值形式输出,而不是相对值

-t 不要打印时间戳

-vv 输出详细信息(比如 tos、ttl、checksum等)

-X 同时用 hex 和 ascii 显示报文内容

-XX 同 -X,但同时显示以太网头部

1、抓取端口是80的包

tcpdump -nnvA -i any -s 0   port 80

 2、抓取 9856或9857或9855 端口的 HTTP 有效数据包,排除 TCP 连接建立过程的数据包(SYN / FIN / ACK)

tcpdump -nnvA -i any  -s 0  '(port 9856 or port 9857 or port 9855)' and '(((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'

 3、读取tmp.pcap文件并过滤

 tcpdump -nnvAr tmp.pcap | grep 0013

 

 

 

 

 

 

 
1.wget公司
posted @ 2023-04-09 13:07  苦逼yw  阅读(19)  评论(0编辑  收藏  举报