外网远程唤醒Windows--群晖
电脑平时虽然不关机,但有时候会因为一些原因关机了,之前设置了来电自启。但是短时间断电或者其他原因造成的关机并不会自动唤醒,故而打算通过群晖实现远程Wake-on-LAN。
准备
一、一台群晖
二、本文的步骤会很详细,但是仍然假设你有一定Windows和Linux使用经验。
BIOS开启WOL
具体操作根据主板厂商操作不同,可自行百度。
Windows设置
右击Windows徽标找到设备管理器
找到网络适配器,双击网卡–>电源管理–>打开图中设置
到这里,Windows的设置基本完成,有的还需要到电源计划里开启快速启动。
群晖通过docker部署WOL
群晖使用docker
1.打开群晖套件中心搜索下载图中软件(docker)。
注册表搜索下载wol,这里我用的jazzdd/wol。
下载好后直接到映像运行。
这里注意不要勾选启用自动重新启动
这里需要设置两个东西,一个是环境里的mac地址,一个是网络使用host网络(忘记标注了图片)
max地址直接打开cmd输入命令ipconfig /all就能看到,但是注意网卡,不要选到虚拟机什么的。
之后直接一 ...
转发Windows远程桌面远程连接--群晖
由于教研室路由器烧了,用了老路由器,并不支持ipv6,但是想实现Windows远程桌面访问,想到还有一台群晖,故用dockers来部署frp实现。
准备
一、三台设备
设备 A, Windows, 为你用来远程连接的电脑。
设备 B, Linux, 有公网 IP,我这里用的是白群晖。
设备 C, Windows, 被远程连接的电脑。
如果不满足第二个条件,那么,拜拜~~
二、本文的步骤会很详细,但是仍然假设你有一定Windows和Linux使用经验。
FRP(Fast Reverse Proxy)是一个高性能的反向代理应用,用于帮助用户快速地将本地服务暴露给互联网或其他网络。它主要用于内网穿透,允许从公网安全访问处于NAT或防火墙后的内网服务。FRP特别适合于个人或小型企业在没有公网IP或者无法进行复杂路由器配置的情况下,实现远程访问内网资源。
FRP的主要组件:
frps(Server端):部署在具有公网IP的服务器上,作为转发的中转。
frpc(Client端):部署在内网的机器上,用于连接frps,并将内网服务通过frps转发出去。
应该重点理解frpc和frps的作用 ...
成电813简答题
1.介质在外电场的作用下发生极化的物理机制是什么?受到极化的介质一般具有什么样的宏观特征(6次)
物理机制:在外电场的作用下,无极分子中的正电荷沿电场方向移动,负电荷逆电场方向移动,导致正负电荷中心不再重合形成许多沿外电场方向有序排列的电偶极子,它们对外产生的电场不再为0。对于有极分子,它的每个电偶极子在外电场的作用下要产生转动,使每个电偶极子沿外电场方向有序排列,它们对外产生的电场也不再为0。
宏观特征(2次):在电介质内部和表面上就可能会出现宏观电荷分布。
2.简述静电场边值问题的唯一性定理,它的意义何在?(3次)
唯一性定理(静电场):在场域VVV的边界面SSS上给定电位函数φ\varphiφ的值或电位函数φ\varphiφ的法向导数∂φ∂n\frac{\partial \varphi}{\partial n}∂n∂φ的值,则电位函数φ\varphiφ的泊松方程或拉普拉斯方程在场域VVV内具有唯一解。
意义:首先,它指出了静电场边值问题具有唯一解的充分必要条件,只要在边界面 SSS上的每一点给定电位函数φ\varphiφ的值或法向导数∂φ∂n\frac{\partial ...
wslg安装gnome和Qt
前言
在win10安装wsl中我们安装了Ubuntu,这时安装qt会报错
1Full message -- "./gpt4all-0.1.0-Linux.run: error while loading shared libraries: libxcb-xinerama.so.0: cannot open shared object file: No such file or directory"
这时我们运行命令
1sudo apt install libxcb-xinerama0 libxcb-cursor0
并没有任何作用,这时我通过安装gnome桌面解决了此问题。
安装gnome
开启systemd
由于gnome依赖systemd,所以我们应先安装systemd,在新版wsl2中已经支持了systemd,我们可以通过如下方式开启:
方法一:这里我安装之后遇到了其他问题,最后解决了,参考
方法二:
1sudo nano /etc/wsl.conf
添加下述文本
12[boot]systemd=true
关闭wsl
1wsl --shutdown
重新开 ...
wslg在win10的安装
前言
WSLg(Windows Subsystem for Linux GUI)是Windows Subsystem for Linux(WSL)的一个增强功能,允许在Windows操作系统上运行Linux图形用户界面(GUI)应用程序。WSLg的目标是提供更好的性能和兼容性,以使Linux GUI应用程序在Windows上的运行更加流畅和自然。
以下是WSLg的一些主要特点和功能:
完整的Linux图形支持: WSLg提供了完整的X服务器支持,允许Linux GUI应用程序在Windows桌面上运行。这包括支持X11和Wayland等图形协议。
性能优化: WSLg针对图形性能进行了优化,以提供更快的图形渲染和更流畅的用户体验。它还支持硬件加速,以进一步提高性能。
集成Windows和Linux桌面: WSLg允许在Windows和Linux之间共享剪贴板内容,并支持文件拖放操作,使得在两个操作系统之间传输数据更加方便。
跨发行版兼容性: WSLg不限于特定的Linux发行版,因此可以在各种不同的WSL发行版上运行。这意味着用户可以选择自己喜欢的Linux发行版,并在其中运行GU ...
github+cloudflare搭建图床并实现加速
前言
当处于小图床容易跑路,云服务商oss储存又不想花钱的尴尬处境上,故想用GitHub作为免费图床托管,cloudflare进行代理加速实现图床搭建。
方案的主要思路是使用 Cloudflare 的 Workers 来代理 github 私有仓库中文件的地址,并绑定自己的域名进行使用。该方案主要优势是:
Github 服务稳定,不会跑路。
使用的是 Github 的私有仓库,存储里的文件列表并不会像公开仓库一样全部对外暴露,有一定的安全性。
使用自己的域名,方便以后可能的服务迁移。
免费:GitHub和Cloudflare都提供免费的基本服务,这意味着你可以使用它们搭建图床而不需要额外的费用。
稳定性和可靠性:GitHub和Cloudflare都是知名的服务提供商,拥有稳定的基础架构和高可用性。GitHub 文件托管服务,在稳定性和可靠性方面表现良好。Cloudflare的CDN服务可以加速图像加载,提高用户体验。
全球分发:通过使用Cloudflare的CDN,你的图片可以在全球范围内快速分发,减少加载时间并提升访问速度。
自定义域名:你可以使用自己的域名来访问图床,这为你的图 ...
smms图床图片导出——Python爬虫
前言
由于最近smms不太稳定,有时候会访问慢、加载慢,故决定迁移图床,但是smms没有提供批量操作的功能,故从开发者文档寻找突破,采用爬虫爬取。
coding
开发者文档,从开发者文档我们拿到了请求头部 headers 、url以及返回的数据,这对于我们编写程序就很容易了。
代码
123456789101112131415161718192021222324252627282930313233import requests# 替换为你的smms图床API Tokenapi_token = "****"# API请求地址api_url = "https://sm.ms/api/v2/upload_history?page=1"# 设置请求头部headers = { "Authorization": f"{api_token}", "Content-Type": "multipart/form-data"}# 发 ...
CMake的一些用法(教程)
CMake
本笔记参照于Youtube博主LearnQtGuide的教程CMake-Episode,源码。
Cmake官方网站
文档
cmake_minimum_required
设置项目最低cmake版本,必须有,官方文档
语法
1cmake_minimum_required(VERSION <min>[...<policy_max>] [FATAL_ERROR])
project
用于定义项目的基本信息和属性。官方文档
语法
123456project(<PROJECT-NAME> [<language-name>...])project(<PROJECT-NAME> [VERSION <major>[.<minor>[.<patch>[.<tweak>]]]] [DESCRIPTION <project-description-string>] [HOMEPAGE_URL <url-string>] ...
力扣674.最长连续递增序列
674.最长连续递增序列
力扣题目链接
给定一个未经排序的整数数组,找到最长且 连续递增的子序列,并返回该序列的长度。
连续递增的子序列 可以由两个下标 l 和 r(l < r)确定,如果对于每个 l <= i < r,都有 nums[i] < nums[i + 1] ,那么子序列 [nums[l], nums[l + 1], ..., nums[r - 1], nums[r]] 就是连续递增子序列。
示例 1:
1234输入:nums = [1,3,5,4,7]输出:3解释:最长连续递增序列是 [1,3,5], 长度为3。尽管 [1,3,5,7] 也是升序的子序列, 但它不是连续的,因为 5 和 7 在原数组里被 4 隔开。
示例 2:
123输入:nums = [2,2,2,2,2]输出:1解释:最长连续递增序列是 [2], 长度为1。
提示:
1 <= nums.length <= 10^4
-10^9 <= nums[i] <= 10^9
来源:力扣(LeetCode)
链接:https://leetcode.cn/pro ...
拥抱Windows Terminal-添加右键菜单
Windows Terminal添加右键菜单
添加Terminal到右键菜单将提高开发效率。本教程参考Windows Terminal添加至鼠标右键
步骤
方法一
1.点击图标地址,下载后保存到某路径。
2.新建**.bat文件,执行代码。
12345@echo off reg.exe add "HKEY_CLASSES_ROOT\Directory\Background\shell\wt" /f /ve /d "Windows Terminal here" reg.exe add "HKEY_CLASSES_ROOT\Directory\Background\shell\wt" /f /v "Icon" /t REG_EXPAND_SZ /d "%USERPROFILE%\AppData\Local\terminal\terminal.ico" reg.exe add "HKEY_CLASSES_ROOT\Directory\Background\shell\wt\co ...
拥抱Windows Terminal-配置ssh连接替代xshell
Windows Terminal
引言
Windows Terminal设计清爽,正如LearnQt Cmake教程的外国小哥的夸赞“It’s so cool!”
Windows Terminal 是微软推出的一个新一代命令行工具,旨在为用户提供更先进的终端体验。它集成了多个命令行环境,如命令提示符(Command Prompt)、PowerShell、WSL(Windows Subsystem for Linux)等,为开发人员和系统管理员提供更大的灵活性和效率。
1. 多标签和分屏支持: Windows Terminal 支持多个标签页和分屏布局,使用户可以在一个窗口内同时运行多个命令行会话,提高了工作效率。
2. 自定义性强: 用户可以根据自己的偏好自定义外观、配色方案、字体等,使其界面更符合个人审美和工作环境。
3. 支持 Emoji 和图标: Windows Terminal 可以在标签页标题中显示 Emoji 和图标,这不仅可以增加乐趣,还有助于快速识别不同标签页的内容。
4. 支持多种命令行环境: Windows Terminal 集成了多个命令行环境,如传统的命令提 ...
力扣343.整数拆分
343.整数拆分
力扣题目链接
给定一个正整数 n ,将其拆分为 k 个 正整数 的和( k >= 2 ),并使这些整数的乘积最大化。
返回 你可以获得的最大乘积 。
示例 1:
123输入: n = 2输出: 1解释: 2 = 1 + 1, 1 × 1 = 1。
示例 2:
123输入: n = 10输出: 36解释: 10 = 3 + 3 + 4, 3 × 3 × 4 = 36。
提示:
2 <= n <= 58
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/integer-break/description/
思路
方法一:动态规划
dp数组代表iii拆分的最大积,可以把iii拆成jjj和i−ji-ji−j(两个)以及jjj和dp[i−j]dp[i-j]dp[i−j](三个及三个以上)来实现。这里主要记录一种比较容易理解的数学方法,故不作精讲。
方法二:数学
这个方法来自于美版的美版的大佬StefanPochmann:
You’re making it pretty complicated.
If a ...
Windows配置Clash预处理实现ChatGPT设置单独节点
有时我们可能需要单独设置clash的分流规则,比如chatgpt单独使用某节点,这时候可使用此方法。
详细方法
打开setting->Profiles->Parsers->edit:
输入以下代码:
12345678910111213141516171819parsers: # array - url: 订阅链接 yaml: prepend-proxy-groups: # 在proxy-groups最前面增加代理分组 - name: ChatGPT type: select proxies: - 节点 - 美国 02 | 专线 - 美国 03 | 专线 - 美国 04 | 专线 - 日本 01 | 专线 - 日本 02 | 专线 prepend-rules: # 在rules最前面增加规则 - DOMAIN-SUFFIX,openai. ...
《Modern C++ Tutorial》尾返回类型推导笔记
《Modern C++ Tutorial》读书笔记
在线阅读:https://changkun.de/modern-cpp/zh-cn/00-preface/
《Modern C++ Tutorial》:https://changkun.de/modern-cpp
GitHub仓库:https://github.com/changkun/modern-cpp-tutorial
欧长坤:https://github.com/changkun
第二章 语言可用性的强化
尾返回类型推导
你可能会思考,在介绍 auto 时,我们已经提过 auto 不能用于函数形参进行类型推导,那么 auto 能不能用于推导函数的返回类型呢?还是考虑一个加法函数的例子,在传统 C++ 中我们必须这么写:
1234template<typename R, typename T, typename U>R add(T x, U y) { return x+y;}
注意:typename 和 class 在模板参数列表中没有区别,在 typename 这个关键字出现之前, ...
现代C++
C++的不断发展
C已经有了长久的历史并且正在不断的发展,为了学习C新特性我找到了欧长坤所著的《Modern C++ Tutorial》:
在线阅读:https://changkun.de/modern-cpp/zh-cn/00-preface/
《Modern C++ Tutorial》:https://changkun.de/modern-cpp
GitHub仓库:https://github.com/changkun/modern-cpp-tutorial
欧长坤:https://github.com/changkun
813电磁场与波
第1章 矢量分析
1.1 矢量代数
1.1.1 标量和矢量
数学上,任一代数量aaa都可称为标量。在物理学中,任一代数量一旦被赋
予“物理单位”,则称为一个具有物理意义的标量,即所谓的物理量,如电压uuu电
荷量QQQ、质量mmm能量www等都是标量。
一般的三维空间内某一点 PPP处存在的一个既有大小又有方向特性的量称为
矢量。
单位矢量:模为1的矢量称为单位矢量。eAe_AeA表示与矢量AAA同方向的单位矢量,显然:
eA=AA\begin{aligned}
e_A=\frac{\mathbf{A}}{A}
\end{aligned}
eA=AA
常矢量:大小和方向均不变的矢量。 单位矢量不一定是常矢量。
1.1.2 矢量的加法和减法
平行四边形法则:
运算法则:
交换律:A+B=B+AA+B=B+AA+B=B+A
结合律:(A+B)+C=A+(B+C)(A+B)+C=A+(\begin{array}{c}B+C\\\end{array})(A+B)+C=A+(B+C)
1.1.3 矢量的乘法
标量和矢量: ...