首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何编写一个linux bash脚本,告诉我哪些计算机在我的局域网中处于打开状态?

要编写一个Linux Bash脚本来检测局域网中哪些计算机处于打开状态,可以使用nmap工具。nmap是一个网络扫描和安全审计工具,可以用来检测网络中哪些设备已打开。

首先,确保已经安装了nmap。在终端中输入以下命令来安装:

代码语言:txt
复制
sudo apt-get install nmap

接下来,创建一个名为check_devices.sh的脚本文件,并在其中输入以下内容:

代码语言:bash
复制
#!/bin/bash

# 获取局域网子网掩码
subnet_mask=$(ifconfig | grep -Eo 'inet addr:192.168.1.[0-9]{1,3}' | awk '{print $2}')

# 使用nmap扫描局域网中的设备
nmap -sn $subnet_mask/24 | awk '/^Nmap/{ip=$NF}/^MAC/{print ip,$NF}'

保存文件后,给予脚本执行权限:

代码语言:txt
复制
chmod +x check_devices.sh

现在,您可以运行脚本来检测局域网中哪些计算机处于打开状态:

代码语言:txt
复制
./check_devices.sh

脚本将输出局域网中所有已打开的设备的IP地址和MAC地址。

注意:nmap工具需要在您的系统上安装和配置。如果您的系统没有安装nmap,请按照上述步骤进行安装。此外,脚本中的子网掩码(192.168.1.0/24)可能需要根据您的局域网配置进行更改。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

shell脚本实例精讲_shell脚本编程实例

大家好,又见面了,我是你们的朋友全栈君。 shell 是一个应用程序,它连接了用户和 Linux 内核,让用户能够更加高效、安全、低成本地使用 Linux 内核,这就是 Shell 的本质。..."平局" fi;; *) echo "必须输入 1‐3 的数字" esac 编写脚本测试 192.168.4.0/24 整个网段中哪些主机处于开机状态,哪些主机处于关机 状态(for 版本) #!...$i is down" fi done 编写脚本测试 192.168.4.0/24 整个网段中哪些主机处于开机状态,哪些主机处于关机 状态(while 版本) #!...$i is down" fi let i++ done 编写脚本测试 192.168.4.0/24 整个网段中哪些主机处于开机状态,哪些主机处于关机 状态(多进程版)...,在计算机中自动创建对应的账户并配置初始密码 #!

1.3K11

100 个 Linux Shell 脚本经典案例解析

"  else    echo "平局"  fi;;*)  echo "必须输入 1‐3 的数字"esac12)编写脚本测试 192.168.4.0/24 整个网段中哪些主机处于开机状态, 哪些主机处于关机状态.../bin/bash# 编写脚本测试 192.168.4.0/24 整个网段中哪些主机处于开机状态,哪些主机处于关机# 状态(for 版本)for i in {1..254}do  # 每隔0.3秒ping...$i is down"     fidone13)编写脚本测试 192.168.4.0/24 整个网段中哪些主机处于开机状态, 哪些主机处于关机状态 (while 版本)#!.../bin/bash# 编写脚本测试 192.168.4.0/24 整个网段中哪些主机处于开机状态,哪些主机处于关机# 状态(while 版本) i=1while [ $i -le 254 ]do     .../bin/bash# 编写脚本测试 192.168.4.0/24 整个网段中哪些主机处于开机状态,哪些主机处于关机# 状态(多进程版)#定义一个函数,ping 某一台主机,并检测主机的存活状态myping

3.5K50
  • Shell编程100例,超赞!

    /bin/bash # 编写脚本测试 192.168.4.0/24 整个网段中哪些主机处于开机状态,哪些主机处于关机 # 状态(for 版本) for i in {1..254} do # 每隔0.3...$i is down" fi done 13、编写脚本测试 192.168.4.0/24 整个网段中哪些主机处于开机状态,哪些主机处于关机状态(while 版本) #!.../bin/bash # 编写脚本测试 192.168.4.0/24 整个网段中哪些主机处于开机状态,哪些主机处于关机 # 状态(while 版本) i=1 while [ $i -le 254 ]...$i is down" fi let i++ done 14、编写脚本测试 192.168.4.0/24 整个网段中哪些主机处于开机状态,哪些主机处于关机状态(多进程版) #!.../bin/bash # 编写脚本测试 192.168.4.0/24 整个网段中哪些主机处于开机状态,哪些主机处于关机 # 状态(多进程版) #定义一个函数,ping 某一台主机,并检测主机的存活状态

    3.5K11

    整理了 34 个 Linux Shell 脚本,一定能帮到你!

    /bin/bash # 统计当前 Linux 系统中可以登录计算机的账户有多少个 #方法 1: grep "bash$" /etc/passwd | wc -l #方法 2: awk -f : '/bash...192.168.4.0/24 整个网段中哪些主机处于开机状态,哪些主机处于关机 #!.../bin/bash # 编写脚本测试 192.168.4.0/24 整个网段中哪些主机处于开机状态,哪些主机处于关机 # 状态(for 版本) for i in {1..254} do # 每隔0.3...另外,搜索公众号【混说Linux】后台回复“加群”,进Linux技术交流群。 #!/bin/bash # 编写脚本:提示用户输入用户名和密码,脚本自动创建相应的账户及配置密码。.../bin/bash # 通过位置变量创建Linux 系统账户及密码 # $1 是执行脚本的第一个参数,$2 是执行脚本的第二个参数 useradd "$1" echo "$2" | passwd

    87711

    实现在外网SSH远程访问内网树莓派的详细教程

    如何在局域网外SSH远程访问连接到家里的树莓派?...这篇文章主要也是讲解树莓派+cpolar组合的作用,可以实现: 如何在 Raspberry Pi 中启用 SSH 如何通过 SSH 连接到 Raspberry Pi设备 如何远程在任何地点访问家中的树莓派...在 Raspberry Pi 上启用 SSH SSH 在 Raspberry Pi 中默认处于禁用状态,因此您必须在全新安装 Raspbian 后打开 Pi 时启用它。...在过去,恶意软件感染了数千台使用默认用户名和密码的Raspberry Pi。 在要通过 SSH 连接到 Pi 的计算机上打开终端(在 Mac 和 Linux 上),然后键入以下命令。...下载完成之后,打开PuTTY,然后在session中的“Host Name”中输入树莓派的IP地址,然后点击"open",即可连接树莓派了。 第一次你会看到一个警告,点击 Accept 按钮。

    1.3K41

    如何在局域网外SSH远程访问连接到家里的树莓派?

    这篇文章主要也是讲解树莓派+cpolar组合的作用,可以实现: 如何在 Raspberry Pi 中启用 SSH 如何通过 SSH 连接到 Raspberry Pi设备 如何远程在任何地点访问家中的树莓派...在使用树莓派 (Raspberry Pi) 可以做的所有事情中,将其用作为家庭网络中的服务器非常流行。...在 Raspberry Pi 上启用 SSH SSH 在 Raspberry Pi 中默认处于禁用状态,因此您必须在全新安装 Raspbian 后打开 Pi 时启用它。...在过去,恶意软件感染了数千台使用默认用户名和密码的Raspberry Pi。 在要通过 SSH 连接到 Pi 的计算机上打开终端(在 Mac 和 Linux 上),然后键入以下命令。...下载完成之后,打开PuTTY,然后在session中的“Host Name”中输入树莓派的IP地址,然后点击"open",即可连接树莓派了。 第一次你会看到一个警告,点击 Accept 按钮。

    70041

    nmap

    nmap的使用 参考 https://zhuanlan.zhihu.com/p/343709343 图形化界面 zenmap 分布式框架 Dnamp 作用 主机探测 端口扫描 版本检测 系统检测 支持探测脚本的编写...IP提供的计算机网络服务类型(网络服务均与端口号相关),从而发现攻击弱点,常见服务对应端口号 首先判断nmap输入的命令行中是否包含域名,如果包含则需要用DNS服务器进行域名解析,然后发送ICMP Echo...端口处于开放状态:进行TCP链接时,目标主机返回SYN+ACK的报文,就认为端口开放且使用了TCP服务 Closed 端口处于关闭状态:返回RST类型的报文(关闭的端口也是可以访问的,只是没有上层的服务在监听此端口...,而且只是我们在扫描的这个时刻为关闭,当我们在另一个时间段进行扫描时,这些关闭的端口可能会处于open状态) Filterd 端口处于过滤,无法收到返回的probe状态:报文无法到达指定端口,nmap...``` nmap -sC -sV -O 7. ``` nmap --script=default 和上面相等 探测局域网中存活主机 一个局域网中有很多台设备,如何获取哪些设备正在开机状态

    16110

    如何入门 Bash 编程

    如何学习编程 如果你以前从未进行过任何编程,可能面临考虑两个不同的挑战:一个是了解怎样编写代码,另一个是了解要编写什么代码。...一旦熟悉了基础知识,就可以探索更多编程语言的内容,从而使你的程序能够做越来越重要的事情。 在 Bash 中,你使用的大多数 关键字 是 Linux 命令。 语法 就是 Bash。...在终端中执行一个动作时,你也在学习如何编写脚本。 例如,我曾经负责将大量 PDF 书籍转换为低墨和友好打印的版本。...我的第一个想法是学习如何编写 PDF 编辑器脚本,但是经过数天的研究,我找不到可以编写编辑 PDF 应用程序的脚本(除了非常丑陋的鼠标自动化技巧)。...镜像,学习编写 Bash 脚本都需要先使用 Bash,然后学习如何将这些脚本从仅仅是一个命令列表变成响应输入的东西。

    95030

    3万字Linux总结

    MAC 头,需要修改哪些内容呢 桥接的基本原理 在这里插入图片描述 桥接默认使用 VMnet0,Bridge 桥当作为一个机器,这个机器有两块网卡分别处于两个局域网中,使用"桥"连接,这样局域网A和...如何动态查看应用的执行结果,如我想知道每隔一秒高亮显示网络连接数的变化情况 我想查看磁盘的大小 img 我想抓取数据包并分析网络情况 在Linux 中通常就会使用tcpdump 来抓取网络中的报文,并进行分析.../bin/bash 表示什么意思 ?!/bin/bash 表示脚本使用 /bin/bash。对于 python 脚本,就是 #!...否则,nohup 命令的退出状态是 Command 参数指定命令的退出状态。 使用 & 用途:在后台运行 一般两个一起用 才疏学浅,难免有纰漏,如果你发现错误的地方,麻烦告诉我,我对其修正。...通过 netstat -tunl 查看 在这里插入图片描述 从上图可以发现启用了 22端口,这是默认就打开了,我的远程工具XSHELL 即就是连接的这个端口 如何查看链接的状态呢 如果查看端口对应的什么服务

    1.7K20

    10分钟教你如何使用MCSM面板实现我的世界Minecraft无公网IP联机

    前言 本教程主要介绍如何在Linux Ubuntu系统中使用MCSManager面板搭建我的世界Minecraft服务器,并结合cpolar内网穿透工具,实现与不在同一个局域网下的好友远程联机游戏,无需公网...Linux使用MCSM面板搭建我的世界私服相对比windwos简单,也是目前比较流行的设置方式,在Linux中安装MCSManger也是非常容易,一键指令脚本即可安装,本篇教程演示在Ubuntu。...如何使用MCSM搭建我的世界Java版服务器并实现MC远程联机游戏 1....pwd=6666 提取码:6666 本教程使用的是windows启动器和JAVA 安装好最新版JAVA后在启动器中创建一个账号,正版或是离线账号都可以 打开我的世界启动器,选择和服务器一样的版本1.19.2...,点击右侧的编辑 修改隧道信息,将保留成功的固定tcp地址配置到隧道中 端口类型:修改为固定tcp端口 预留的tcp地址:填写保留成功的地址 点击更新 隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表

    12010

    渗透测试-编程-1

    Bash脚本 Bash脚本(程序)可以单批次地执行数条计算机命令。Bash脚本又称作shell脚本,是一种由多条终端命令构成的脚本程序。所有可以直接在终端界面里运行的命令,都可以通过脚本来执行。...1.ping 首先编写写一个名为 pingscript.sh的脚本程序,旨在通过ICMP(Internet Control Message Protocol)的ping命令对局域网进行扫描,以探测那些能够回复消息的主机地址...2.脚本编程 现在写一个对整个网段进行ping扫描的Bash脚本程序。大多数的计算机程序都能通过帮助信息来完成一个程序的使用方法。因此首先完成程序的提示功能。 #!...环境变量PATH为Linux系统提供了“在哪些目录下寻找可执行的命令”的关键信息。...脚本程序首先判断命令行的第一个参数(1)是否为空(null)。符号$1代表命令行传给Bash脚本程序的第一个参数。双等号(==)是逻辑符号。在if语句之后,有一个then语句(2)。

    1K20

    如何使用Android手机通过JuiceSSH远程访问本地Linux服务器

    处于内网的虚拟机如何被外网访问呢?如何手机就能访问虚拟机呢? cpolar+JuiceSSH 实现手机端远程连接Linux虚拟机(内网穿透,手机端连接Linux虚拟机) 1....Linux安装cpolar 首先,我们在Linux中安装[cpolar内网穿透](cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站)工具 使用一键脚本安装命令,该脚本适用于...[] 点击确定后,提示我们需要输入用户名对应的密码,然后点击确定 加下来成功连接上了我们的Linux服务器,这里以Ubuntu系统为例子,这样一个通过手机远程ssh 访问Linux服务器的地址就设置好了...保留一个固定tcp地址 登录cpolar官网,点击左侧的预留,找到保留的tcp地址,我们来为我的世界保留一个固定tcp地址: 地区:选择China vip 描述:即备注,可自定义 点击保留 地址保留成功后...地址配置到隧道中 端口类型:修改为固定tcp端口 预留的tcp地址:填写官网保留成功的地址, 点击更新 隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表,可以看到公网地址已经更新成为了固定tcp地址

    19400

    「薅」52图初探Linux通用知识

    Linux命令详解 一 Linux通用知识 说到操作系统,如果读大学的时候是计算机专业,那肯定就会上这门课,我猜测当时的你们想法是这样的 上大学使用的都是Windows系统,界面友好,上手快,习惯性的点点点操作...,我发现实验室的怎么都是对着一个窗口操作,瞬间觉得以前的计算机知识白学了,于是开启了Linux之路。...同样的壳还有当我输入Maven+相关参数的时候是不是就会去执行相应的功能,我们驶入sql语句的时候,数据库引擎是不是也会各种调用,一样的道理 尝试编写第一个shell vim创建打开一个文件,扩展名为....“&&”当前一个脚本成功完成才执行后面的命令 脚本文件中,如何将其重定向标准输出和标准错误流到 log.txt 文件 ? ....crond是一个可以在指定时间执行一个shell脚本或者一系列的Linux命令。和Windows下的计划任务类似。当安装完操作系统后,默认会安装这个服务工具,并且会自动启动crond进程。

    1.6K30

    一文吃透Linux提权

    内核,操作系统,所有应用程序,其插件和Web服务 0x003 linux提权—自动信息收集 枚举脚本 我主要使用了三个用于枚举机器的脚本。它们在脚本之间有些区别,但是它们输出的内容很多相同。...我不建议在搜索Linux内核漏洞时完全依赖此数据库。 避免一开始就利用任何本地特权升级漏洞 如果可以避免,请不要使用内核漏洞利用。如果使用它,可能会使计算机崩溃或使其处于不稳定状态。...这样我从没在任何地方见过。让我们解释一下。 首先将Target的/ etc / passwd文件复制到攻击者计算机。 修改文件,并在上一步中保存的密码文件中添加用户到攻击者计算机。...sh’ bash 以下命令将以root身份打开一个bash shell。...我们在/ tmp目录中编写一个C文件并进行编译。 rootme可执行文件将生成一个shell。

    5.6K42

    面试linux运维一定会问到Shell脚本这24个问题

    作者:Linux中国 来源:见文末 虽然现在Python在运维工作中已经使用很普遍,但是很多企业在找Linux云计算工程师的时候还是会问到 shell 脚本的问题,它有助于你在工作环境中自动完成很多任务...Q:2 什么是默认登录shell,如何改变指定用户的登录shell 答:在Linux操作系统,“/bin/bash”是默认登录shell,是在创建用户时分配的。...标记的用途是什么? 答:在写一个shell脚本时,如果你想要检查前一命令是否执行成功,在if条件中使用“$?”可以来检查前一命令的结束状态。...Q:10 告诉我shell脚本中Case语句的语法 ? 答:基础语法如下: case 变量 in 值1) 命令1 命令2 ….. 最后命令 !!...测试命令会通过比较字符串中的每一个字符来比较。 Q:17 Bourne shell(bash) 中有哪些特殊的变量 ? 答:下面的表列出了Bourne shell为命令行设置的特殊变量。

    1.7K11

    这玩意据说是“最先进的USB攻击平台”,只卖99.99美元

    这款设备“打开”的攻击面的确比先前的设备大了很多。渗透测试攻击和IT自动化工作,对Bash Bunny而言几秒内就能完成。...设备采用简单的脚本语言,用记事本之类的工具就能编写。各种paylaod代码就包含在一个库(GitHub)中,要找到相应的攻击方式还是很容易的。...payload开关以及RGB三色LED灯,可用于选择和了解攻击状态。连接串口,还能访问Linux终端(BASH命令)。 通过特定payload实现WiFi Pineapple的融合。...通过类似QuickCreds这类攻击,就能从锁定的计算机中在数秒时间内窃取哈希身份凭证。将Bash Bunny插入到计算机中,等待数秒,LED灯变绿就搞定了。...和一般键击注入攻击工具不同,Bash Bunny设备中的payload文本文件不需要专门做编码,也不需要读取器就能加载。”Bunny Script”脚本语言搭配BASH,使用起来也很方便。

    1.6K60

    Nmap常见使用方式大全

    命令:nmap -sP 192.168.40.1-254,或 nmap -sP 192.168.40.0/24说明:在局域网内,无论采用哪一种选项Nmap都是通过ARP包来询问IP地址上的主机是否活动的...) 报文,对于Linux系统的目标机,如果目标机未响应,则说明目标端口处于开放状态或被防火墙屏蔽;如果目标机返回TCP RST+ACK报文,则说明目标端口处于关闭状态。...对于Windows系统的目标机,无论目标端口处于开放还是关闭状态,目标机都会返回TCP RST+ACK报文。因此,隐蔽扫描方式适合于Linux系统的目标机端口扫描。...--spoof-mac 0 其中参数0表示随机分配一个MAC地址,也可以手动指定MAC地址,如:nmap --spoof-mac aa:bb:cc:dd:ee:ff NSE脚本的简单应用除了常规的网络扫描...Nmap还可根据NSE(Nmap scripting Engine)的脚本进行大量渗透工作,这种脚本基于Lua语言编写。

    22520

    必会的 24 道 Shell 脚本面试题

    Linux云计算工程师的时候还是会问到 shell 脚本的问题,它有助于你在工作环境中自动完成很多任务。...Q:2 什么是默认登录shell,如何改变指定用户的登录shell 答:在Linux操作系统,“/bin/bash”是默认登录shell,是在创建用户时分配的。...标记的用途是什么? 答:在写一个shell脚本时,如果你想要检查前一命令是否执行成功,在if条件中使用“$?”可以来检查前一命令的结束状态。...Q:10 告诉我shell脚本中Case语句的语法 ? 答:基础语法如下: case 变量 in 值1) 命令1 命令2 ….. 最后命令 !!...测试命令会通过比较字符串中的每一个字符来比较。 Q:17 Bourne shell(bash) 中有哪些特殊的变量 ? 答:下面的表列出了Bourne shell为命令行设置的特殊变量。

    1K30
    领券