技术博文 · 2021-04-23 0

Shell常用命令

1、wget

-O  下载文件重命名为

-c	断点续存
wget -–no-check-certificate 	下载https文件
[root@cqdsrmyy-net-proxy download]# wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest_cl
--2021-04-13 14:38:29--  https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest_cl
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 185.199.108.133, 185.199.109.133, 185.199.110.133, ...
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|185.199.108.133|:443... connected.
Unable to establish SSL connection.

 

2、安装测速命令speed_cli

https://www.linuxprobe.com/speedtest-network-in-linux.html

git clone https://github.com/sivel/speedtest-cli.git
python speedtest-cli/setup.py install
speedtest-cli –h
/usr/bin/speedtest-cli –share
/usr/bin/speedtest-cli –list

3、关闭IPV6

sysctl net.ipv6.conf.all.disable_ipv6**=**1

4、 显示系统开机信息

dmesg

5、scp 开启断点续传,调用rsync -P命令

alias scpr="rsync -P --rsh=ssh"

6、查看防火墙规则

iptables -L

7、查看mysql创建的数据库的字符集;

mysql> show create database jumpserver;
+------------+---------------------------------------------------------------------+
| Database   | Create Database                                                     |
+------------+---------------------------------------------------------------------+
| jumpserver | CREATE DATABASE `jumpserver` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+------------+---------------------------------------------------------------------+
1 row in set (0.00 sec)

8、nginx

查看Nginx的版本号:nginx -V
启动Nginx:start nginx
快速停止或关闭Nginx:nginx -s stop
正常停止或关闭Nginx:nginx -s quit
配置文件修改重装载命令:nginx -s reload

9、获取进程pid

ps -ef | grep "name" | grep -v grep | awk '{print $2}'

10、安装制定的docker版本号前查看(前提加载docker yum源)

yum list docker-ce --showduplicates

11、添加阿里云docker yum 源

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

12、添加路由

vim /etc/sysconfig/static-routes

13、可以使用一下命令查使用内存最多的5个进程

ps -aux | sort -k4nr | head 5

或者

top (然后按下M,注意大写)

14、可以使用一下命令查使用CPU最多的5个进程

ps -aux | sort -k3nr | head 5

或者

top (然后按下P,注意大写)

15、查看某个进程

ps -ef|grep tomcat|grep -v grep

16、tcping测试延迟丢包

没啥鸟用,和telnet一样,就是返回了 port is open

[root@yb-ps-renmin 2021-04]# tcping 10.10.9.37 8081
10.10.9.37 port 8081 open.

同类ping命令还有psping、paping、hping

命令介绍参考:https://www.cnblogs.com/jonnyan/p/9662791.html

推荐使用hping,功能比较齐全

17、hping 目前最新的版本为 hping3

yum install hping3
hping3  -S 192.168.27.57 -p 1433

个人感觉 Hping 是功能最强大的一款工具,可以测试防火墙功能、端口扫描、Idle 扫描、拒绝服务攻击、木马功能,这篇hping3命令已经详细介绍了,而且有些测试不方便展示在此。在此略过细节。另外,工具再好,也需要可以掌握、驾驭工具的人。

18、查看java版本

在centos7 当中操作指令集是不一样的 ,jdk1.7 查看版本号可以通过

java -Vand java --version 查看
而jdk1.8 就得通过 java -version来查看版本号了

19、yum针对软件包操作常用命令:

  • 1.使用YUM查找软件包 命令:yum search 2.列出所有可安装的软件包 命令:yum list 3.列出所有可更新的软件包 命令:yum list updates 4.列出所有已安装的软件包 命令:yum list installed 5.列出所有已安装但不在 Yum Repository 内的软件包 命令:yum list extras 6.列出所指定的软件包 命令:yum list 7.使用YUM获取软件包信息 命令:yum info 8.列出所有软件包的信息 命令:yum info 9.列出所有可更新的软件包信息 命令:yum info updates 10.列出所有已安装的软件包信息 命令:yum info installed 11.列出所有已安装但不在 Yum Repository 内的软件包信息 命令:yum info extras 12.列出软件包提供哪些文件 命令:yum provides

20、mtr命令

mtr -r -c 30 -s 1024 www.baidu.com
  1. mtr -r 已报告模式显示
  2. mtr -c 设置每秒发送数据包的数量
  3. mtr -s 用来指定ping数据包的大小
HOST: AY14041211122443416bZ       Loss%   Snt   Last   Avg  Best  Wrst StDev  

    1. 114.215.99.248                0.0%    30    0.6   2.0   0.6  17.2   3.0  
    2. 10.106.148.18                 0.0%    30    1.0  48.9   0.8  96.2  32.3  
    3. 42.120.245.1                  0.0%    30    0.8   1.6   0.7   2.8   0.6  
    4. 42.120.244.73                 0.0%    30    1.4   1.6   0.7  14.3   2.4  
    5. 150.138.132.133              63.3%    30  17327 20199 17327 23128 1754.0  
    6. 150.138.128.65                0.0%    30    1.8   2.1   1.7   2.6   0.3  
    7. 202.97.39.105                 0.0%    30   15.9  15.2  13.5  17.7   1.3  
    8. ???                          100.0    30    0.0   0.0   0.0   0.0   0.0  
    9. 220.191.200.138               0.0%    30   21.0  22.5  21.0  23.9   0.9  
   10. ???                          100.0    30    0.0   0.0   0.0   0.0   0.0  
   11. 115.239.209.46               56.7%    30   22.4  23.0  22.4  23.5   0.3  
   12. ???                          100.0    30    0.0   0.0   0.0   0.0   0.0  
   13. 115.239.210.27               40.0%    30   21.9  22.4  21.6  26.8   1.1  

 

第二列 Loss%:是显示的每个对应IP的丢包率。

第四列 Last:显示的最近一次的返回时延。

第六列 Best:最好或者说时延最短的时间。

第八列 StDev:标准偏差。

21、抓包分析

tcpdump -i eth0 tcp port 23 and host 210.27.48.1 -w tcpdump.cap
监视指定主机和端口的数据包,上面列子:获取主机210.27.48.1接收或发出的telnet包

https://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html

22、nc

服务端监听

nc -l 9999 监听9999端口

客户端发包

nc -vz -w 2 10.0.1.161 9999

(-v可视化,-z扫描时不发送数据,-w超时几秒,后面跟数字)

好玩的nc命令

客户端可以写个脚本

vim a.sh

#!/bin/bash
for((i=1;i<=3000;i++));
do
echo $i;
sleep 1
echo `date`
done
chmod +x a.sh
./a.sh|nc 10.0.1.161 9999
可以持续测试端口收发信息情况

 

23、更换阿里云yum源

mv /etc/yum/repos.d/Centos-Base.repo /etc/yum/repos.d/Centos-Base.repo_bak
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

24、xz加压缩

xz -z 要压缩的文件

如果要保留被压缩的文件加上参数 -k ,如果要设置压缩率加入参数 -0 到 -9调节压缩率。如果不设置,默认压缩等级是6.

xz -d 要解压的文件

同样使用 -k 参数来保留被解压缩的文件。

25、rpm卸载

rpm -e XXXXX

26、利用mail发送邮件

需要关闭sendmail和postmail

echo  hello word | mail -s " title" 123456@qq.com  

27、msyql 增删改查授权

grant select,update,insert,delete on serial.* to gateway@'%' identified by 'yuantu123';

28、查看用户修改信息

[root@qd-proxy logs]# chage -l devmanager
最近一次密码修改时间					:8月 12, 2019
密码过期时间					:从不
密码失效时间					:从不
帐户过期时间						:从不
两次改变密码之间相距的最小天数		:0
两次改变密码之间相距的最大天数		:99999
在密码过期之前警告的天数	:7
[root@qd-proxy logs]# 

29、修改用户登陆过期时间

chage -E "2022-01-01" devmanager
chage -E "-1" devmanager   ###-1表示从不过期,0表示立即过期

 

俗话曰:浪子回头金不换,可是俗话又曰:狗该不了吃屎。我们到底是应该给浪子一个机会,还是将狗一棍打死。取决于我们对这个人是浪子还是狗的判断。而不是去质疑古人说的俗话。