强大命令
- 一、top – 实时显示系统运行状态
- 二、htop & btop – 互动的进程查看器
- 三、vmstat – 显示虚拟内存状态
- 四、dstat – 全能系统信息统计工具
- 五、glances – 高层次的多子系统概览
- 六、sar – 系统运行状态统计
- 七、du的替代:ncdu
- 八、用sed/grep查找JSON数据的替代:jq
- 九、find的替代:fd
- 十、exa
- 十一、ack & ag
- 十二、duf
- 十三、bat,ccat
- 十四、autojump
- 十五、pyenv, nodenv 以及 rbenv
- 十六、 fzf
- 十七、 multitail
- 十八、axel
- 十九、其他
- 二十、shellcheck
- 二十一、cp mv加进度条
- 二十二、ss命令
- 二十三、ncat命令
一、top – 实时显示系统运行状态
top 命令的功能是用于实时显示系统运行状态,包含处理器、内存、服务、进程等重要资源信息。运维工程师们常常会把 top 命令比作是 “加强版的 Windows 任务管理器”,因为除了能看到常规的服务进程信息以外,还能够对处理器和内存的负载情况一目了然,实时感知系统全局的运行状态,非常适合作为接手服务器后执行的第一条命令。
动态查看进程信息,并且可以查看到系统负载,内存,CPU 等使用情况。
语法格式
top [参数]
[root@root ~]# top -c #以默认格式显示系统运行信息,但提供完整的进程路径及名称
[root@root ~]# top -b #以批处理模式显示程序信息:
[root@root ~]# top -c -d 5 #设定每隔 5 秒刷新一次信息:
[root@root ~]# top -n 5 设定总显示次数为 5 回,随后自动退出命令:
[root@root ~]# top以默认格式显示系统运行信息
字段解析
load average: 0.00, 0.01, 0.05
系统 1 分钟,5 分钟,15 分钟平均负载
%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
us 用户态 CPU
sy 内核态 CPU
ni 优先级
id 空闲的 CPU
wa 等待输入输出设备的 CPU
hi 硬中断
si 软中断
st 虚拟化占用 CPU 资源
KiB Mem : 995896 total, 487280 free, 121580 used, 387036 buff/cache
total 总内存空间
free 空闲内存
used 已使用内存
buff 写缓冲 解决空间问题
cache 读缓存 解决速率问题
top && top -c #推荐使用
二、htop & btop – 互动的进程查看器
在默认情况下,htop显示的各项指标与top相同,而且是漂亮的彩色
htop 是 linux 系统中的一个互动的进程查看器,一个文本模式的应用程序 (在控制台或者 X 终端中),需要 ncurses。htop 比较人性化。它可让用户交互式操作,支持颜色主题,可横向或纵向滚动浏览进程列表,并支持鼠标操作。
htop 相比较 top 的优势有可以横向或纵向滚动浏览进程列表,以便看到所有的进程和完整的命令行、在启动上比 top 更快、杀进程时不需要输入进程号、支持鼠标选中操作、top 已不再维护。
htop 相当于 top 的升级版,监控界面是彩色的。
非交互式是直接输入命令的时候加上参数,而交互式是 htop 进入监测后使用的
交互式参数
[root@root ~]# htop -d 3 设置显示更新的延迟为 3 秒:
[root@root ~]# htop -u linuxcool_user 显示一个给定的用户的进程:
按F2或者S对菜单设置
按F5或者T可以树状显示
PS:还有常用的用于监控IO和网络的iotop以及iftop工具
或者sysstat开源工具
三、vmstat – 显示虚拟内存状态
vmstat 命令的含义为显示虚拟内存状态(“Virtual Memory Statistics”),但是它可以报告关于进程、内存、I/O 等系统整体运行状态。
语法格式
vmstat [参数]
&&
vmstat [参数] [时间间隔] [执行次数]
[root@root ~]# vmstat -a 显示活动内页:
[root@root ~]# vmstat -f 显示启动后创建的进程总数
[root@root ~]# vmstat -m 显示 slab 信息
[root@root ~]# vmstat -n 头信息仅显示一次:
[root@root ~]# vmstat -s 以表格方式显示事件计数器和内存状态:
[root@root ~]# vmstat -p /dev/sda1 显示指定的硬盘分区状态:
[root@root ~]# vmstat 1 指定状态信息刷新的时间间隔为 1 秒:
[root@root ~]# vmstat 2 3 指定状态信息刷新的时间间隔为 2 秒刷新 3 次:
[root@root ~]# vmstat 1 5 -t -SM 每1s输出一次,总共5次,加上时间戳,以MB格式显示结果,si/so,bi/bo字段不会被转换
[root@root ~]# vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 0 35896 445256 520 487496 271 2091 622 2119 129 127 1 1 97 0 0
1.procs
r 表示等待执行的任务数,当一段时间内这个数值一直超过 CPU 数说明当前系统出现 CPU 瓶颈;
b 表示等待 IO 的进程数量。
2.memory
swpd 虚拟内存已使用的大小,如果大于 0,表示你的机器物理内存不足了,如果不是程序内存泄露的原因,那么你该升级内存了或者把耗内存的任务迁移到其他机器;
free 空闲的物理内存的大小;
buff Linux/Unix 系统是用来存储,目录里面有什么内容,权限等的缓存;
cache 直接用来记忆我们打开的文件, 给文件做缓冲。
3.swap
si 每秒从磁盘读入虚拟内存的大小,如果这个值大于 0,表示物理内存不够用或者内存泄露了,要查找耗内存进程解决掉;
so 每秒虚拟内存写入磁盘的大小,如果这个值大于 0,同上。
4.io
bi 块设备每秒接收的块数量,这里的块设备是指系统上所有的磁盘和其他块设备,默认块大小是 1024byte;
bo 块设备每秒发送的块数量,例如我们读取文件,bo 就要大于 0。bi 和 bo 一般都要接近 0,不然就是 IO 过于频繁,需要调整。
5.system
in 每秒中断数,包括时钟中断;
cs 表示每秒上下文切换;
这两个值越大,会看到由内核消耗的 cpu 时间会越多。
6.cpu
us 用户 CPU 时间;
sy 系统 CPU 时间,如果太高,表示系统调用时间长,例如是 IO 操作频繁;
id 空闲 CPU 时间,一般来说,id + us + sy = 100, 一般我认为 id 是空闲 CPU 使用率,us 是用户 CPU 使用率,sy 是系统 CPU 使用率;
wa 等待 IO CPU 时间;
st 等待 IO CPU 时间。
四、dstat – 全能系统信息统计工具
dstat 命令是一个用来替换 vmstat、iostat、netstat、nfsstat 和 ifstat 这些命令的工具,是一个全能系统信息统计工具。与 sysstat 相比,dstat 拥有一个彩色的界面,在手动观察性能状况时,数据比较显眼容易观察;而且 dstat 支持即时刷新,譬如输入 dstat 3 即每三秒收集一次,但最新的数据都会每秒刷新显示。和 sysstat 相同的是,dstat 也可以收集指定的性能资源,譬如 dstat -c 即显示 CPU 的使用情况
dstat [参数]
[root@root ~]# dstat 分别显示 cpu、disk、net、page、system 信息:
[root@root ~]# dstat 3 每三秒收集一次 cpu、disk、net、page、system 信息
[root@root ~]# dstat -c 显示 CPU 系统占用,用户占用,空闲,等待,中断,软件中断等信息
[root@root ~]# dstat -d 显示磁盘读写数据大小
[root@root ~]# dstat -n 显示网络状态
五、glances – 高层次的多子系统概览
Glances 是一个相对比较新的系统监控工具,用 Python 编写的,使用 psutil 库从系统获取信息。可以用它来监控 CPU、平均负载、内存、网络接口、磁盘 I/O,文件系统空间利用率、挂载的设备、所有活动进程以及消耗资源最多的进程。Glances 有很多有趣的选项。它的主要特性之一是可以在配置文件中设置阀值(careful 小心、warning 警告、critical 致命),然后它会用不同颜色显示信息以表明系统的瓶颈。
glances [参数]
[root@root ~]# glances -s -B 192.168.10.2 & 192.168.10.2 主机启动 glances 服务
[root@root ~]# glances -c 192.168.10.2 从另一台主机查看 192.168.10.2 主机的系统负载状态
[root@root ~]# glances -b 显示网络连接速度 Byte/ 秒
[root@root ~]# glances -t 6 设置屏幕刷新的时间间隔为 6 秒
六、sar – 系统运行状态统计
sar 命令是 Linux 下系统运行状态统计工具,它将指定的操作系统状态计、数器显示到标准输出设备。sar(System Activity Reporter 系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁盘 I/O、CPU 效率、内存使用状况、进程活动及 IPC 有关的活动等
sar [ 选项 ] [ <时间间隔> [ <次数> ] ]
[root@root ~]# sar -R 使用 - R 参数显示内存信息
[root@root ~]# sar -b 使用 - b 参数显示 I/O 速率
[root@root ~]# sar -u 使用 - u 参数显示 CPU 利用率
[root@root ~]# sar -d 使用 - d 参数查看每块磁盘的使用信息
[root@root ~]# sar -i 1 -f 5 使用 - i 参数和 - f 参数设置状态信息 1 秒刷新一次并记录 5 次
七、du的替代:ncdu
NCurses磁盘使用率(NCurses DiskUsage,即ncdu)工具提供了与du类似的结果,但其基于curses的交互式界面可以显示消耗了大部分磁盘空间的目录。
首先Ncdu需要花一些时间分析磁盘,然后按照最常用的顺序显示目录或文件,如下所示:
ncdu 1.14.2 ~ Use the arrow keys to navigate, press ? for help
--- /home/rgerardi ------------------------------------------------------------
96.7 GiB [##########] /libvirt
33.9 GiB [### ] /.crc
7.0 GiB [ ] /Projects
. 4.7 GiB [ ] /Downloads
. 3.9 GiB [ ] /.local
2.5 GiB [ ] /.minishift
2.4 GiB [ ] /.vagrant.d
. 1.9 GiB [ ] /.config
. 1.8 GiB [ ] /.cache
1.7 GiB [ ] /Videos
1.1 GiB [ ] /go
692.6 MiB [ ] /Documents
. 591.5 MiB [ ] /tmp
139.2 MiB [ ] /.var
104.4 MiB [ ] /.oh-my-zsh
82.0 MiB [ ] /scripts
55.8 MiB [ ] /.mozilla
54.6 MiB [ ] /.kube
41.8 MiB [ ] /.vim
31.5 MiB [ ] /.ansible
31.3 MiB [ ] /.gem
26.5 MiB [ ] /.VIM_UNDO_FILES
15.3 MiB [ ] /Personal
2.6 MiB [ ] .ansible_module_generated
1.4 MiB [ ] /backgrounds
944.0 KiB [ ] /Pictures
644.0 KiB [ ] .zsh_history
536.0 KiB [ ] /.ansible_async
Total disk usage: 159.4 GiB Apparent size: 280.8 GiB Items: 561540
你可以通过方向键导航到每个结果。如果在选中的结果上按下Enter,则ncdu将显示该目录的内容:
-- /home/rgerardi/libvirt ----------------------------------------------------
/..
91.3 GiB [##########] /images
5.3 GiB [ ] /media
你可以深入各个目录,找出哪些文件占用的磁盘空间最多。使用左方向键可以返回到上一个目录。在默认情况下,你可以按d键删除文件,但在删除文件之前ncdu会要求确认。如果你想禁止删除操作以防止发生意外,则可以通过-r选项设置只读访问:ncdu -r。
ncdu可用于许多平台和Linux发行版。例如,你可以使用dnf从官方代码库直接将其安装在Fedora上,$ sudo dnf install ncdu
。更多有关该工具的信息,请参见:https://dev.yorhel.nl/ncdu。
八、用sed/grep查找JSON数据的替代:jq
jq是JSON的命令行处理器。就像sed或grep一样,但主要是为了处理JSON数据。如果你是日常任务需要使用JSON的开发人员或系统管理员,那么这是你的工具箱中必不可少的工具。
与通用文本处理工具(例如grep和sed)相比,jq的主要优点在于它了解JSON数据结构,你可以通过一个表达式创建复杂的查询。
举例说明,假设你正在尝试在下列JSON文件中查找容器的名称:
{
"apiVersion": "v1",
"kind": "Pod",
"metadata": {
"labels": {
"app": "myapp"
},
"name": "myapp",
"namespace": "project1"
},
"spec": {
"containers": [
{
"command": [
"sleep",
"3000"
],
"image": "busybox",
"imagePullPolicy": "IfNotPresent",
"name": "busybox"
},
{
"name": "nginx",
"image": "nginx",
"resources": {},
"imagePullPolicy": "IfNotPresent"
}
],
"restartPolicy": "Never"
}
}
如果你利用grep直接查询name,则结果为:
$ grep name k8s-pod.json
"name": "myapp",
"namespace": "project1"
"name": "busybox"
"name": "nginx",
grep会返回所有包含单词name的行。你可以在grep中添加一些其他选项来限制查询结果,并通过正则表达式操作找到容器的名称。在使用jq获得所需结果时,你只需要使用一个模拟向下导航数据结构的表达式,如下所示:
$ jq '.spec.containers[].name' k8s-pod.json
"busybox"
"nginx"
该命令会返回两个容器的名称。如果你只想查看第二个容器的名称,则可以在表达式中添加数组元素索引:
$ jq '.spec.containers[1].name' k8s-pod.json
"nginx"
因为jq能够理解数据结构,所以即使文件格式稍有变化,它也可以提供相同的结果。但对于grep和se来说,格式稍有变化提供的结果就会完全不同。
jq还有很多功能,我需要用另写一篇文章才能介绍其所有的功能。有关更多信息,请参见jq项目页面(https://stedolan.github.io/jq/)、manpages或tldr jq
终端中将json数据处理以及格式化显示,支持高亮,可以替代python -m json.tool
九、find的替代:fd
fd是find命令的一种简单快速的替代。它的目的不是替换find的功能,而是提供一些合理的默认值,在某些情况下非常有用。
例如,在包含Git代码库的目录中搜索源代码文件时,fd会自动排除隐藏的文件和目录(包括.git目录),并忽略.gitignore文件中的模式。通常,它可以更快地查询,并提供相关度更高的结果。
在默认情况下,fd会针对当前目录执行不区分大小写的模式搜索,并输出彩色的结果。使用find进行的相同搜索时,你需要提供其他命令行参数。例如,搜索当前目录中所有的markdown文件(即.md或.MD文件),find命令如下所示
$ find . -iname "*.md"$ find . -iname "*.md"
而如下fd搜索能够返回相同的结果:
$ fd .md
在有些情况下,fd也需要其他选项。例如,如果想让搜索包括隐藏的文件和目录,则必须使用选项-H,而find则不需要。
fd可用于许多Linux发行版。在Fedora中安装fd可使用标准代码库:
$ sudo dnf install fd-find
有关更多信息,请请见fd的GitHub代码库(https://github.com/sharkdp/fd/)。
十、exa
提到 ls 命令,大家都不陌生,在 Linux 环境下,其主要作用:列出当前目录下所包含的文件及子目录,如果当前目录下文件过多,则使用命令 ls 不是很好,因为这输出出来的结果跟你所要查找的文件未能达成一致,第一:需要进行二次过滤查找;第二:文件过多时,终端输出结果较慢;
EXA 是 Unix 和 Linux 操作系统附带的命令行程序的 ls 现代替代品,赋予它更多功能和更好的默认值。它使用颜色来区分文件类型和元数据。它了解符号链接、扩展属性和 Git。它体积小、速度快,而且只有一个二进制文件
EXA 与 LS 有什么不同之处?
终端屏幕不再是瓶颈:exa 功能强大,比 ls 要友好,输出结果会更快;
颜色:exa 大量使用颜色;
不与 ls 命令冲突
EXA 的特征
色彩:文件类型列表以及如何区分文件;
网格视图:在与终端窗口大小相同的网格中显示文件;
长远:在表中显示文件及其元数据;
树视图:在树中显示文件及其子代;
Git 集成:在存储库中时,查看文件的 Git 状态;
筛选:隐藏列表中的文件,显示不可见的文件,并对输出进行排序;
Xattrs:列出文件的扩展属性;
Ubuntu 21.10 安装只需执行命令:apt install exa即可。
显示选项
-1,–oneline:每行显示一个条目
-G,–grid:将条目显示为网格(默认)
-l,–long:显示扩展细节和属性
-R,–recurse:递归到目录
-T,–tree:作为树递归到目录中
-x,–across:对网格进行排序,而不是向下排序
-F,–classify:按文件名显示类型指示器
–colo[u]r:何时使用终端颜色
–colo[u]r-scale : 清楚地突出显示文件大小的级别
–icons : 显示图标
–no-icons : 不显示图标(总是覆盖 --icons)
过滤选项
-a,–all:显示隐藏和“点”文件
-d,–list-dirs:像普通文件一样列出目录
-L,–level=(depth):限制递归深度
-r,–reverse:反转排序顺序
-s,–sort=(field):按哪个字段排序
–group-directories-first:在其他文件之前列出目录
-D,–only-dirs:只列出目录
–git-ignore:忽略中提到的文件.gitignore
-I,–ignore-glob=(globs):要忽略的文件的全局模式(管道分隔)
传递该–all选项两次以同时显示.和…目录
十一、ack & ag
ack和ag是两个文本搜索工具,比自带的grep要好用得多。
在指定目录下搜索文本时,不需要像 grep 那样指定各种命令行选项,输出结果也会包含文件名和行号,并且会高亮显示搜索关键字。
ag是可以比grep、ack更快的递归搜索文件内容。
Ubuntu 21.10 安装 ag 和 ack
apt-get install silversearcher-ag
apt install ack
ag 命令常用参数
ag -g (文件名):类似于 find . -name (文件名)
ag -i sed:忽略大小写搜索含 sed 文本
ag -A sed:搜索含 sed 文本,并显示匹配内容之后的 n 行文本
ag -B sed:搜索含 sed 文本,并显示匹配内容之前的 n 行文本
ag -C sed:搜索含 sed 文本,并同时显示匹配内容以及它前后各 n 行文本的内容
ag -w sed:全匹配搜索,只搜索与所搜内容完全匹配的文本
ag --java sed:在 java 文件中搜索含 sed 的文本
ag --xml sed:在 XML 文件中搜索含 sed 的文本
ag 命令的使用
根据文件名进行搜索对应的文件,可使用-g参数选项。
ag -g jiaoben
jiaoben2.sh
jiaoben1.sh
jiaoben3.sh
搜索当前目录下有关 sed 关键字的文本
ag -w sed
jiaoben1.sh
10: sed -i '2d' "$new_filename"
十二、duf
在 Linux 环境下,我们知道 df 命令是用于显示磁盘分区上可使用的磁盘空间,默认显示单位为 KB,你还可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
除此之外,du 命令也是查看使用空间的,但与 df 命令不同的是 Linux du 命令是对文件和目录磁盘使用的空间的查看,和 df 命令还是有一些区别的
接下来就跟大家介绍一款终端工具,你可以理解为传统的 Linux 命令 df 和 du 整合版 —— duf。
duf 是一个用 Golang 编写的跨平台磁盘使用情况工具,可以让你轻松地检查可用磁盘空间,对输出进行分类,并以用户友好的方式进行呈现,适用于 Linux、Windows、macOS、Android、FreeBSD
$ sudo apt install gdebi
#如果报错,Failed to fetch http://security.ubuntu.com......
# sudo apt-get update
$ sudo gdebi duf_0.5.0_linux_amd64.deb
#要先在下载duf_0.5.0_linux_amd64.deb,下载地址为:https://github.com/muesli/duf/releases/download/v0.5.0/duf_0.5.0_linux_amd64.deb
安装完毕后,可直接使用 duf,方法也非常简单
十三、bat,ccat
在 Linux 操作系统下,我们经常使用 cat 命令去连接多个文件并打印到标准输出,合成几个文件为一个目标文件,追加几个文件到目标文件中。
最近我在 GitHub 上发现了一个具有相似作用的命令叫做 “Bat”,它是 cat 命令的替代品,具有一些例如语法高亮、 Git 集成和自动分页等非常酷的特性。
在这篇文章中,就来给大家介绍下如何在 Linux 中安装和使用 bat 命令
sudo apt-get install wget
wget https://github.com/sharkdp/bat/releases/tag/v0.18.3/bat_0.18.3_amd64.deb
sudo dpkg -i bat_0.18.3_amd64.deb
bat 命令的使用
bat 命令的使用与 cat 命令的使用非常相似。
使用 bat 命令创建一个新文件:
bat > jiaoben1.sh
使用 bat 命令查看文件内容:
bat jiaoben1.sh
使用 bat 命令同时查看多个文件:
bat jiaoben1.sh jiaoben2.sh
使用 bat 命令将多个文件的内容合并到一个单独的文件中:
bat jiaoben1.sh jiaoben2.sh > test.txt
上述介绍了 bat 创建新文件、查看文件内容、将多个文件的内容合并到一个单独的文件中的方式。
接下来,我们就来看一下 bat 命令一些非常酷的特性。
bat 命令支持大多数编程和标记语言的语法高亮,那么我们就来使用 cat 和 bat 命令展示下 jiaoben1.sh 里面的内容做个鲜明的对比
可以看出,cat 命令以纯文本格式显示文件的内容,而 bat 命令显示了语法高亮和整齐的文本对齐格式。
从上面 bat 命令的输出,可以看出是有表格线的,如果你只想显示行号(而没有表格)可以使用-n参数来实现,虽然 cat 执行也会显示行号,但还是没有 bat 执行输出后的效果美观。
bat -n jiaoben2.sh
bat 命令支持 Git 集成,可以轻松查看和编辑 Git 存储库中的文件,bat 与 Git 连接可显示关于索引的修改
bat 支持自动分页,这点特性也是需要值得注意的。
支持分页意思也就是说,当文件的输出内容超出屏幕显示的时候,bat 命令会自动将自己输出的内容传到 less 命令中,你将可以使用回车键一页一页的查看输出内容,使用空格键可直接跳转至文末最后一行。
当你使用 bat 命令时这些都是不必要的,bat 命令将自动传输跨越多个页面的文件的输出。
bat jiaoben3.sh
对比下 cat 命令,查看 jiaoben3.sh 跨多个页面文件内容时,提示符会直接跳到文件的最后一页,将无法看到跨多个页面文件开头及中间部分的内容。
cat jiaoben3.sh
如果你想要通过 cat 来实现 bat 命令的效果,则需要去使用 cat 的输出传输到 less 命令中去,这样就可以从开头部分一页一页的查看内容了。
cat jiaoben3.sh | less
同样,这种方式也是可以使用回车键一页一页的查看输出内容以及使用空格键可直接跳转至文末最后一行。
十四、autojump
十五、pyenv, nodenv 以及 rbenv
pyenv可以轻松实现Python版本的切换。官方网站有详细的使用教程。或者你可以直接使用前面提到的tldr来查阅常用命令。
不同的项目Python版本以及开发环境会有差异,Python的版本管理相对复杂,如果你不小心的话,很容易弄乱配置关系。该工具可以十分优雅地解决上面的问题,它可以全局或“按项目文件夹”切换Python版本,而且每个版本都是相互隔离的。
对了,有一个名为 asdf 的工具,它可以将pyenv,nodenv,rbenv及其他env进行统一管理。它提供了几乎所有编程语言的版本管理,如果你也有版本管理的需求,一定记得尝试使用一下
十六、 fzf
fzf— fuzzy finder,即模糊查找器。它是一种通用工具,可让你使用模糊搜索来查找文件、历史命令、进程、git提交等。你键入一些字母,它会尝试匹配结果列表中任何位置的字母。输入的字母越多,结果也就越准确
十七、 multitail
multitail是个用来实现同时监控多个文档、类似tail命令的功能的终端工具。它与tail的最大区别就是它会在控制台中打开多个窗口,这样使同时监控多个日志文档成为可能
十八、axel
axel 是命令行多线程下载工具,下载文件时可以替代 curl、wget。
Ubuntu 21.10 安装 axel
apt-get install axel
axel 参数选项
-n:指定线程数
-o:指定另存为目录
-s:指定每秒的最大比特数
-q:静默模式
案例
# axel -n 10 -o /tmp/ http://mirrors.163.com/ubuntu/ls-lR.gz
# exa /tmp/ls-lR.gz
/tmp/ls-lR.gz
十九、其他
dust(du)procs(ps)bottom(top)zoxide(cd,z+目录名字)ripgrep(grep,rg ‘关键字’ 目录)httpie(curl,http或者https+URL)hyperfine(time,hyperfine ‘命令1’ ‘命令2’)
二十、shellcheck
shellcheck:shell脚本静态检查工具,能够识别语法错误以及不规范的写法。用法shellcheck xx.sh即可。安装的话直接apt-get install shellcheck就行。还提供网站https://www.shellcheck.net
二十一、cp mv加进度条
百度搜索
二十二、ss命令
比netstat强大
ss:显示已建立的套接字列表
ss -t:只显示tcp
ss -u :只显示udp
ss -l:只显示侦听状态的socket
ss -s:简易显示
ss -4l/6l:ipv4/6侦听
ss -n:不解析成主机名字,端口号也不解析