- 博客(137)
- 收藏
- 关注
原创 使用 Cygwin 在 Windows 上开启 ssh 服务器
通常与 Linux 系统打交道多一点,通常连接 Linux 机器时会使用到 ssh 进行连接,并且使用 bash 会更多一点。最近突发奇想,如何在 Windows 上开启 ssh 服务器,使得即使电脑不在身边,也能通过 ssh 连接到远程主机,获得和操作 Linux 类似的体验。在 Windows 中安装 ssh 服务器有几种方式,其中 Windows 原生提供了 ssh 服务选项,但是通过该方式安装 ssh 服务器后进入的是 Cmd 或者 PowerShell 终端。
2024-12-03 23:19:59
1047
原创 【vim】使用 gn 组合命令实现搜索选中功能
具体说,Vim里执行搜索后,执行n操作只会跳转到下一个匹配项,而不选中它。:表示接下来要执行的是普通模式下的命令序列。它确保执行的命令不会受到当前可能存在的映射(mappings)等的影响,按照Vim原本的普通模式命令逻辑来执行。是Vim中的全局命令(global command),它用于在整个文件范围内对满足特定条件的行进行操作。这个正则表达式模式匹配)的情况,在普通模式下执行操作,将该行中匹配到的IP地址复制到寄存器。综合起来,这条命令的完整作用是:在整个文件中,对于每一行中匹配到IP地址(按照。
2024-11-21 23:52:49
514
原创 【Linux】apt 关闭 ssl 认证
【注意】apt 关闭 ssl 认证可能会引起软件安装风险,请尽量避免关闭。执行以下命令可以实现全局关闭 sll 验证。
2024-11-16 23:49:08
1118
原创 【vim】手动安装 Leader-F
首先安装好。下载 LeaderF 插件。从 LeaderF 的下载插件的压缩包。解压插件压缩包到一个合适的位置。通常可以将插件解压到 ~/.vim/plugged/ 目录下(如果你的 Vim 配置了其他插件目录,也可以解压到相应目录)。确保插件的目录结构正确,插件应该包含一个名为 plugin 和一个名为 autoload 的子目录,以及可能的其他文件.确保系统已经安装 python2-devel 或者 python3-develRCHE/CentOS 下使用命令。
2024-10-21 23:28:48
395
原创 Cygwin Terminal 下使用 vim 时绝对路径无法打开文件问题
这个问题是由于 Cygwin 环境下的文件路径处理问题导致的。在 Cygwin 环境中,Windows 的文件路径和 Unix 风格的路径是有区别的。Cygwin 尝试将 Windows 路径转换为 Unix 风格的路径,但这个转换过程并不总是完美的。当直接输入绝对路径时,Cygwin 可能无法正确地识别和转换该路径,从而导致 Vim 无法找到并打开该文件。而当通过 cd 命令进入到目录后,再使用 vim filename 的方式打开文件,Cygwin 就能正确识别相对路径,从而能够顺利打开文件。
2024-08-12 22:22:46
454
原创 【笔记】Spring Cloud Gateway 实现 gRPC 代理
Spring Cloud Gateway 在 3.1.x 版本中增加了针对 gRPC 的网关代理功能支持,本片文章描述一下如何实现相关支持.本文主要基于 Spring Cloud Gateway 的进行一个实践练习。有兴趣的可以翻看官方文档。由于 Grpc 是基于 HTTP2 协议进行传输的,因此 Srping Cloud Gateway 在支持了 HTTP2 的基础上天然支持对 Grpc 服务器的代理,只需要在现有代理基础上针对 grpc 协议进行一些处理即可。
2024-06-28 23:28:31
1758
原创 [笔记] keytool 导入服务器证书和证书私钥
我当前手头已有一个服务器证书和对应的私钥,现在需要转换为 Java KeyStore 格式使用,找了一大圈才发现 keytool 无法直接导入服务器证书和私钥,当然证书可以直接导入,但是私钥是无法直接导入。找了一大圈发现可以先将服务器证书和证书私钥转为 PKCS12 格式的密钥库,然后通过 PKCS12 格式证书转为 Java KeyStore 格式。
2024-06-28 00:07:49
935
原创 Hide Taskbar – 快捷键隐藏任务栏
说实话,我的电脑屏幕并不大,因此屏幕上的每一寸都很珍贵,通过开启 “自动隐藏任务栏” 选项可以提升屏幕使用空间,但是存在一个问题就是当鼠标划过屏幕最底层或者有新的窗口通知事件到达时,任务栏总是出乎意料的弹出,导致应用窗口不断的发生重绘,最近找到一个比较小巧简单的软件,通过快捷键的方式可以快速禁用任务栏弹出。运行后只需点击快捷键就能隐藏任务栏,简单易用。****
2024-06-27 00:54:20
1892
原创 【笔记】一条命令使用 openssl 生成服务器证书
我们在请求 https 网址的时候,服务器会将自己的服务器证书发送到客户端以客户端去验证,客户端会拿自己本地的 CA 证书去验证服务器证书是通过该CA颁发的,如果是则身份认证通过。如果本地的CA无法验证服务器发来的证书时则会提示不安全或者拒绝连接。在生成 CSR(证书签名请求文件) 后,就可以将这个文件提交到 CA 机构,由 CA 机构生成对应的证书,CA 机构会验证 CSR 中的信息,在确认信息可信后,会使用自己的私钥对其中的信息进行数字签名后生成实际的服务器证书。
2024-06-21 21:04:25
782
原创 Win系统 锁屏自动暂停音乐
Windows 的系统锁屏功能可以让我们在离开电脑前时保护我们的系统安全,而如果你正在播放音乐的话,锁屏开启后默认是继续播放的。这就导致在公共场合下别人很容易能够通过你的电脑屏幕看到你在听什么,这里介绍一种通过 AutoHotKey 实现锁屏自动暂停音乐的方法。是一款免费的开源系统自动化和定制软件实用工具,可以帮助您大大提高日常计算机工作的效率。它允许您使用简单的编程语言创建自定义脚本,以实现各种任务的自动化,如文本替换、窗口管理、信息填充以及复杂的工作流程。这样在使用快捷键。
2024-06-12 22:41:49
670
原创 【笔记】Vim-plug 插件管理器离线安装插件
这是 Vim 的插件管理器,除了 Vim-Plug 以外还有 Vundle,NeoBundle 等其他 Vim 插件管理器,选择 Vim-Plug 的原因是它足够小巧,简单。然后将代码解压后移动到指定目录即可,这里的目录我们可以自己指定,比如用户目录下。注意这里的配置,变成了本地路径,这样的话 Vim-Plug 就会直接从本地目录加载插件了,而不需要通过 PlugInstall 执行安装操作。Vim-Plug 在正常情况下,我们需要在 begin 和 end 之间指定我们要安装的插件,如当我们想要安装。
2024-05-21 22:20:09
1542
原创 [笔记] Win11 Microsoft Store App 离线下载
Micorsoft Store 中的离线安装包一般后缀为 AppxBundle 和 Appx。在一些环境下 Microsoft Store 下载速度缓慢,或者需要账号登录才能安装的场景,可以通过找到对应的离线安装包的形式进行安装。选择后缀为 appx 或者 appxbundle 的文件链接点击下载即可,下载完成后双击即可完成安装。
2024-05-07 22:53:21
2201
原创 Windows 系统上实现 sshpass 方案
sshpass 是 Linux 上的一个免输入密码通过 ssh 登录的方案,可以通过在命令行中指定密码,无需交互的方式完成一些自动化的动作。但是在 Windows 系统中并没有直接提供相关的支持。本篇文章针对这个思路探讨一下其他实现方式。
2024-04-27 22:32:58
6414
2
原创 Git 如何合并多个连续的提交
我平常的编程喜欢是写一段代码就提交一次,本地一般不攒代码,生怕本地有什么闪失导致白干。没错,由于频繁的提交,又不好好写message导致提交中出现多个相同的 message,同时变更分散在不同的提交中,回溯也十分的不方便。针对这种场景,Git 提供了能力支持,可以将多个提交合并为一个提交,使得提交日志变得清晰可读。此时可以看到提交记录中有多个提交。
2024-03-31 00:09:30
890
原创 [笔记] BAD PASSWORD ,linux 修改密码
随着人们对安全意识的逐渐提升,Linux 中的密码策略也变得越来越复杂,导致使用 passwd 改密时需要花费大量时间来应付密码策略。这里回顾一下这艰难的改密之路。
2024-03-30 22:29:42
1271
原创 JavaScript 使用 Promise 实现 sleep 休眠
以下为代码实现,该代码实现了每隔1秒打印一次当前时间,总共打印5次的功能这里使用了 Promise 异步操作功能,在 Promise 中调用了 setTimeout 方法,并在指定时间后执行回调函数完成 Promise。在外层通过 await 关键字等待 Promise 的完成。这样就实现了一个 sleep 函数了。
2024-03-20 22:45:35
659
1
原创 [笔记] Docker 安装脚本分析
选项时,系统会模拟执行命令或操作,显示将要执行的步骤和可能的结果,但不会真正执行这些步骤。这对于验证复杂的操作或检查潜在的问题非常有用,以便在实际操作之前进行调试或预览。选项运行删除命令,系统会显示将要删除的文件和目录列表,但不会实际删除它们。这样,你可以先检查列表,确保没有意外的文件将被删除,然后再决定是否执行真正的删除操作。是一个常见的命令行参数或选项,用于执行模拟运行而不实际执行任何操作。例如,假设你要删除一个目录及其所有子目录和文件,但你不确定删除操作是否会产生意外结果。
2024-03-14 00:24:15
735
原创 [笔记] 使用 Java Swing 实现一个简单的窗口
Java Swing 是一个用于构建图形用户界面(GUI)的Java库,它提供了丰富的组件和工具,用于创建交互式的桌面应用程序。Swing 是 Java Foundation Classes(JFC)的一部分,它是 Java 平台的一种标准用户界面工具包。Swing 提供了丰富的组件,包括按钮、标签、文本框、列表、表格等,以及布局管理器和事件处理机制等工具,使开发人员能够轻松创建复杂的用户界面。Swing 还支持可定制的外观和主题,开发人员可以根据需要自定义界面的外观和风格。
2024-03-04 00:02:02
1305
原创 [笔记] wsl 禁用配置 win系统环境变量+代理
然后退出wsl,并且执行关闭正在运行的 wsl,执行命令。进入用户目录,创建配置文件。最后重新进入wsl 即可。
2024-03-02 23:10:06
1413
原创 [笔记] 使用 qemu 创建虚拟磁盘并安装 grub
nbd全称 Net Block Device网络块设备,是 Linux 中的一个模块用于加载网络上的块设备,由于使用到了网络,因此拥有较大的兼容性,同时由于通过网络进行传输,因此磁盘传输速度受限于网络带宽.这里主要用到该模块加载 qemu 的虚拟磁盘文件.# 创建一块大小为 128MB 的虚拟磁盘文件 qemu-img create -f qcow2 hd.img 128Mmodprobe nbd max_part = 8 # max_part=8 指定虚拟设备数量这里指定为 8这将将。
2024-01-03 23:42:34
1931
原创 [笔记] wsl2 下使用 qemu/grub 模拟系统启动(多分区)
然后使用losetup -f将其关联为本地回环设备使用系统工具 fdisk 为虚拟硬盘创建分区系统,这里选择使用 GPT 分区系统,并创建了两块分区.这里需要注意不要配置为 MBR 分区系统,会导致系统无法启动,grub-install 目前没找到如何设置支持 MBR 分区系统.在创建完成后通过kpartx -av然后在 /dev/mapper 目录下可以看到刚刚识别的分区信息现在我们可以为这两个分区进行格式化,第一个分区被我用于启动分区,通常文件系统为 fat32 类型的。
2023-12-12 23:32:44
1651
原创 [笔记] wsl 下使用 qemu/grub 模拟系统启动(单分区)
qemu 是一款十分优秀的系统模拟器,可以用于模拟各种CPU架构硬件。你可以在 x86平台上模拟出 arm 架构的 CPU并在其上运行程序,也可以反过来。总而言之,通过 qemu 可以忽略平台间的架构差异,完成硬件模拟。grub 是一个开源的系统启动器,用于对计算机进行初始化并引导至操作系统。
2023-12-11 22:25:24
1589
原创 [笔记] 使用 xshell 记录日志
平常会使用xshell登录远程系统,在一些场景下,由于远端节点不支持下载,因此无法下载日志,此时可以通过 xshell 自带的日志功能将远端节点的日志内容导出.
2023-11-29 23:39:06
2336
原创 linux ld 链接器学习笔记
这里的汇编语法时 AT&T语法,是gcc原生支持的语法,底层使用 gas(gnu assembler) 完成汇编,相较于 Intel x86语法, AT&T 语法要更加古老,因此大多数人更加偏向于使用 Intel 的语法. nasm 编译器支持x86语法.自从2.10版本,Intel语法可以通过使用.intel_syntax指令使用。
2023-11-22 22:15:43
860
原创 [教程]使用 Git 克隆指定分支
Git 是我们开发过程中经常使用到的版本管理工具,在平常情况下我们从远程克隆的时候会将整个库克隆下来,这会包括整个版本库的历史提交记录和远程库里的所有分支。但在一些情况下,比如我们并不需要查看历史提交记录而只是希望能够获取到最新的代码;或者我们只希望克隆某个指定分支时,而不是克隆全部的远程分支,此时我们就可以用到一些选项来减少我们的仓库的体积从而提高生产效率。
2023-03-03 19:44:10
22314
原创 基于图片识别的 UI 自动化测试工具 SikuliX
SikuliX 是一款开源的 GUI自动化测试工具,它的前身是 Sikuli(上帝之眼).不同于传统的 UI自动化测试工具, SikuliX 在执行鼠标键盘自动化时是基于图片识别的,也就是说我们的脚本逻辑可以由"鼠标移动到坐标 x,y"变成"鼠标移动到指定图案上"
2023-01-13 16:13:30
3265
原创 [笔记]在 PowerShell 中实现 tail -f 命令追踪日志
但由于现在的开发环境是 Window 10 ,并没有 tail 命令,经过查找,发现可以在 PowerShell 下使用。在开发过程中经常会遇到在 Linux 下使用。命令实时追踪日志输出。
2022-11-11 10:52:27
4348
原创 [笔记]SSH 端口转发
ssh 拥有很强大的能力,因为在服务器运维中一直在使用 ssh ,因此探讨 ssh 的功能能够在日常开发过程中受益颇多,这里描述下 ssh 的三种端口转发功能。灵活使用可以大大简化我们的开发过程。
2022-09-09 14:09:58
5080
原创 [笔记]使用 Arthas 获取Class 对象参数
class对象->@xxxClass@class 相当于一个静态的变量ognl 命令默认的类加载器为系统类加载器(SystemClassLoader) 注意使用时使用 -c 命令指定下类加载器。
2022-09-05 18:18:04
2242
原创 [折腾]使用SSH服务实现一个socks5代理服务器
其实使用的是ssh的动态转发功能。指定监听的端口,会在本地监听该端口,并将请求到该端口流量基于 SOCKS5 协议转发到远程主机上,其中可以不填,当不写或者为*时表示监听全部地址。-D *:8081,-D 8081,,不执行远程命令,仅仅用于端口转发-T不为该命令分配伪终端通过上面的命令,我们可以通过本地12345代理,将本地请求csdn的流量转发给远程主机,由远程主机帮我们执行请求后将结果返回给我们。...
2022-08-31 15:21:09
4920
原创 MySQL大数据量查询方案
在业务开发过程中,有时会遇到大数据量查询的情况,如果将一次性加载全部查询结果的话会导致内存量暴增,甚至出现OOM异常,为了解决这种场景,MySQL中提供了针对此类场景解决方案,本文针对此类场景进行了研究..........
2022-08-18 18:31:57
6745
原创 SpringBoot 关于异步与事务一起使用的问题
Spring 事务和异步在一起使用时,如果不做处理的话会遇到事务未提交而导致异步方法执行时获取不到未提交的事务的数据从而执行异常,本文描述了一个类似的场景本针对该场景如何处理。
2022-08-13 18:27:18
7587
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人