Linux shell ping命令多并发
#!/bin/bash
#多线程批量ping,有时候多线程使用过多,会导致系统崩溃
#用此方法可以进行多并发
#创建5个进程
thread=5
#创建管道文件
tem_fifofile=/tmp/$$.fifo
mkfifo $tmp_fifofile
exec 8 $tmp_fifofile
rm $tmp_fifofile
#删除文件描述符8,并不会正在的删除此文件,此文件还存在
for i in 'seq $thread'
do
echo 8
#创建一个管道文件,向里面传入了空值,其实随便什么都行。
done
for i in {1....254}
do
read -u 8
#read -u 这个参数是读取文件描述符 8,如果文件描述符中没有东西,那就一直会等待。
{
ip=192.168.1.$i
ping -c1 -W $ip /dev/null
if [ $ -eq 0 ];then
echo "$ip is up"
else
echo "$ip is down"
fi
echo 8
#执行完后,文件描述符没东西了,那就要再添加进去,不然没得读了,也没得取了。
}
#整体来说就是一次就5个5个来进行多并发,就怕多了导致系统有问题
done
wait
#用户暂停当前进程并释放该进程持有的所有资源。
echo "ping 完了~~~"
Linux shell ping命令多并发 相关文章
linux基础
Linux学习 介绍 1.桌面环境 ?UNIX/Linux 本身是没有图形界面的,我们通常在 UNIX/Linux 发行版上看到的图形界面实际都只是运行在 Linux 系统之上的一套软件。 ?Linux 上的这套软件以前是 XFree86,现在则是 xorg(X.Org),而这套软件又是通过 X 窗口系统(X
几种Linux系统切换内核启动顺序方法
CentOS 6 系统更改内核启动顺序方法: 1、查看编辑/etc/grub.conf 文件 vim /etc/grub.conf 2、在grub.conf文件中决定开机使用哪个内核版本做启动的参数是default,默认值为0,代表从最新的内核启动。代表启动的内核版本从上往下依次是0、1、2等。 CentOS 7
Linux系统命令主要包括文件操作、网络命令和性能命令,本文介绍常用文件操作命令
Linux Linux Bash编程测试开发小记 2021-02-03 21:37阅读:224评论:1推荐:0编辑Linux常用命令:性能命令测试开发小记 2021-02-02 22:29阅读:372评论:0推荐:0编辑Linux常用命令:网络命令测试开发小记 2021-02-01 07:27阅读:23评论:0推荐:0编辑Linux常用命令:
Linux下Mysql root用户失去特权怎么办
问题如下: [root@localhost ~]# mysql -uroot -pEnter password:Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 8Server version: 8.0.20 MySQL Community Server - GPLCopyright (c) 2000, 2020, Oracle and/or it
运维面试题(一)
一 基础知识 1 什么是linux的daemon进程和一般进程有什么区别 daemon进程又称为守护 进程,是在系统 启动就运行,系统关闭才停止的进程,独立于终端之外,不与客户端交互。一般进程在关闭终端后就停止了,而daemon进程不会停止。 2 通过free命令查看内存是,
Linux权限详解 命令之 chmod:修改权限
权限简介 Linux系统上对文件的权限有着严格的控制,用于如果相对某个文件执行某种操作,必须具有对应的权限方可执行成功。 Linux下文件的权限类型一般包括读,写,执行。对应字母为 r、w、x。 Linux下权限的粒度有 拥有者 、群组 、其它组 三种。每个文件都
linux服务器安装字体库
linux服务器安装字体库 需求很简单,就是tomcat项目程序用了验证码,他们说中文字体显示为乱码了,叫我去服务器装字体库 首先开发会给一个fonts.tar.gz的压缩包给我的,解压后有点像windows的字体库。 参考链接: Centos7 安装字体库中文字体:http://www.ma
Xshell连接docker centos 7
# 1、下载运行centos:7 docker run -tdi --name test-centos --privileged centos:7 init # 2、进入刚刚运行的容器 docker exec -it test-centos bash # 3、在容器中执行passwd设置登录密码为123456 passwd # 4、 在容器中安装容器的openssh-server yum inst
【Linux常用工具】CentOS安装Redis-cli
简介: redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富
Shell之多网卡IP选择
function local_ip() { local NUM ARRAY_LENGTH NUM=0 for NIC_NAME in $(ls /sys/class/net|grep -vE "lo|docker0"); do NIC_IP=$(ifconfig $NIC_NAME |awk -F'[: ]+' '/inet/ !/inet6/{print $3}') if [ -n "$NIC_IP" ]; then NIC_IP_ARRAY[$NUM]="$NIC_NA