普通视图

发现新文章,点击刷新页面。
昨天 — 2025年6月27日首页

常用 VPS 脚本合集

作者 佐仔
2025年6月26日 15:18

玩VPS主机的小伙伴都知道,新开机第一时间DD重装系统或是测试一下VPS主机性能和IP的干净度等操作,这些操作都离不开大佬们写的各种脚本了,有这些脚本新手机才能好好地玩VPS。以下内容是转自于玩机论坛:Nodeseek,之所以收藏在博客之里,是方便自已日常使用和原文消失。在此再次多谢各位大佬们和Nodeseek论坛网友的整理。

1、DD重装脚本。

史上最强脚本

wget --no-check-certificate -qO InstallNET.sh 'https://raw.githubusercontent.com/leitbogioro/Tools/master/Linux_reinstall/InstallNET.sh' && chmod a+x InstallNET.sh && bash InstallNET.sh -debian 12 -pwd 'password'

萌咖大佬的脚本

bash <(wget --no-check-certificate -qO- 'https://raw.githubusercontent.com/MoeClub/Note/master/InstallNET.sh') -d 11 -v 64 -p 密码 -port 端口 -a -firmware

beta.gs大佬的脚本

wget --no-check-certificate -O NewReinstall.sh https://raw.githubusercontent.com/fcurrk/reinstall/master/NewReinstall.sh && chmod a+x NewReinstall.sh && bash NewReinstall.sh

DD windows(使用史上最强DD脚本)

bash <(curl -sSL https://raw.githubusercontent.com/leitbogioro/Tools/master/Linux_reinstall/InstallNET.sh) -windows 10  -lang "cn"
账户:Administrator
密码:Teddysun.com

使用Windows徽标+R快捷键打开运行框,输入powershell运行,弹出powershell命名输入窗口,输入以下命令:irm https://get.activated.win | iex

2、综合测试脚本

bench.sh

wget -qO- bench.sh | bash

LemonBench

wget -qO- https://raw.githubusercontent.com/LemonBench/LemonBench/main/LemonBench.sh | bash -s -- --fast

融合怪

bash <(wget -qO- --no-check-certificate https://gitlab.com/spiritysdx/za/-/raw/main/ecs.sh)

NodeBench

bash <(curl -sL https://raw.githubusercontent.com/LloydAsp/NodeBench/main/NodeBench.sh)

3、性能测试

yabs

curl -sL yabs.sh | bash

跳过网络,测GB5

curl -sL yabs.sh | bash -s -- -i5

跳过网络和磁盘,测GB5

curl -sL yabs.sh | bash -s -- -if5

改测GB5不测GB6

curl -sL yabs.sh | bash -s -- -5

4、流媒体及IP质量测试

最常用版本

bash <(curl -L -s check.unlock.media)

原生检测脚本

bash <(curl -sL Media.Check.Place)

准确度最高

bash <(curl -L -s https://github.com/1-stream/RegionRestrictionCheck/raw/main/check.sh)

IP质量体检脚本

bash <(curl -sL IP.Check.Place)

一键修改解锁DNS

wget https://raw.githubusercontent.com/Jimmyzxk/DNS-Alice-Unlock/refs/heads/main/dns-unlock.sh && bash dns-unlock.sh

5、测速脚本

Speedtest

bash <(curl -sL bash.icu/speedtest)

Taier

bash <(curl -sL res.yserver.ink/taier.sh)

hyperspeed

bash <(curl -Lso- https://bench.im/hyperspeed)

全球测速

curl -sL network-speed.xyz | bash

6、回程测试

直接显示回程(小白用这个)

curl https://raw.githubusercontent.com/ludashi2020/backtrace/main/install.sh -sSf | sh

回程详细测试(推荐)

wget -N --no-check-certificate https://raw.githubusercontent.com/Chennhaoo/Shell_Bash/master/AutoTrace.sh && chmod +x AutoTrace.sh && bash AutoTrace.sh
wget https://ghproxy.com/https://raw.githubusercontent.com/vpsxb/testrace/main/testrace.sh -O testrace.sh && bash testrace.sh

7、功能脚本

添加SWAP

wget https://www.moerats.com/usr/shell/swap.sh && bash swap.sh

Fail2ban

wget --no-check-certificate https://raw.githubusercontent.com/FunctionClub/Fail2ban/master/fail2ban.sh && bash fail2ban.sh 2>&1 | tee fail2ban.log

一键开启BBR,适用于较新的Debian、Ubuntu

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p
sysctl net.ipv4.tcp_available_congestion_control
lsmod | grep bbr

多功能BBR安装脚本

wget -N --no-check-certificate "https://gist.github.com/zeruns/a0ec603f20d1b86de6a774a8ba27588f/raw/4f9957ae23f5efb2bb7c57a198ae2cffebfb1c56/tcp.sh" && chmod +x tcp.sh && ./tcp.sh

锐速/BBRPLUS/BBR2/BBR3

wget -O tcpx.sh "https://github.com/ylx2016/Linux-NetSpeed/raw/master/tcpx.sh" && chmod +x tcpx.sh && ./tcpx.sh

TCP窗口调优

wget http://sh.nekoneko.cloud/tools.sh -O tools.sh && bash tools.sh

添加warp

wget -N https://gitlab.com/fscarmen/warp/-/raw/main/menu.sh && bash menu.sh [option] [lisence/url/token]

25端口开放测试

telnet smtp.aol.com 25

8、一键安装常用环境及软件

docker

bash <(curl -sL 'https://get.docker.com')

Python

curl -O https://raw.githubusercontent.com/lx969788249/lxspacepy/master/pyinstall.sh && chmod +x pyinstall.sh && ./pyinstall.sh

iperf3

apt install iperf3

realm

bash <(curl -L https://raw.githubusercontent.com/zhouh047/realm-oneclick-install/main/realm.sh) -i

gost

wget --no-check-certificate -O gost.sh https://raw.githubusercontent.com/qqrrooty/EZgost/main/gost.sh && chmod +x gost.sh && ./gost.sh

极光面板

bash <(curl -fsSL https://raw.githubusercontent.com/Aurora-Admin-Panel/deploy/main/install.sh)

哪吒监控

curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh  -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh

WARP

wget -N https://gitlab.com/fscarmen/warp/-/raw/main/menu.sh && bash menu.sh

Aria2

wget -N git.io/aria2.sh && chmod +x aria2.sh && ./aria2.sh

宝塔

wget -O install.sh http://v7.hostcli.com/install/install-ubuntu_6.0.sh && sudo bash install.sh

PVE虚拟化

bash <(wget -qO- --no-check-certificate https://raw.githubusercontent.com/oneclickvirt/pve/main/scripts/build_backend.sh)

Argox

bash <(wget -qO- https://raw.githubusercontent.com/fscarmen/argox/main/argox.sh)

9、综合功能脚本

科技lion

apt update -y  && apt install -y curl

bash <(curl -sL kejilion.sh)

SKY-BOX

wget -O box.sh https://raw.githubusercontent.com/BlueSkyXN/SKY-BOX/main/box.sh && chmod +x box.sh && clear && ./box.sh

TG中文汉化

https://t.me/setlanguage/classic-zh-cn
昨天以前首页

Bash 编程: 计算两个正整数的最大公约数/GCD


使用 Bash 脚本计算最大公约数(GCD)

什么是 GCD?

  • GCD最大公约数(Greatest Common Divisor) 的缩写。
  • 它是能同时整除两个整数的最大正整数。
  • 例如:
    • 8 和 12 的 GCD 是 4
    • 14 和 49 的 GCD 是 7
  • GCD 常用于化简分数、密码算法以及数论中。

计算 GCD 的常见算法

1. 欧几里得算法

  • 最常见且高效的算法
  • 基于这样一个原理:gcd(a, b) = gcd(b, a % b)
  • 重复上述步骤直到 b 为 0,此时 a 即为最大公约数。

2. 减法法

  • 不断用较大的数减去较小的数,直到两个数相等。
  • 结果就是它们的 GCD。
  • 相比欧几里得算法,这种方法在处理大数时效率较低。

3. 二进制 GCD 算法(Stein 算法)

  • 使用位运算代替除法运算。
  • 在某些硬件中更高效,因为避免了除法和取模操作。
  • 基于以下规则:
    • 若两个数都为偶数:gcd(a, b) = 2 * gcd(a/2, b/2)
    • 若其中一个是偶数,则将其除以 2
    • 若两个数都为奇数,且 a > b,则 gcd(a, b) = gcd((a - b)/2, b)

功能概述

  • 该脚本计算两个数字的最大公约数(GCD)
  • 确保输入参数是正整数
  • 当输入缺失或无效时,提供用法说明

脚本功能解释

  • gcd() 函数: 使用循环和取模操作实现欧几里得算法。
  • 参数个数检查: 确保用户传入了两个参数,否则提示用法并退出。
  • 正则校验: 使用 Bash 正则判断两个输入是否为纯数字。
  • 范围校验: 确保两个数字都大于零。
  • 函数调用: 调用 gcd 函数并输出结果。

计算两正整数最大公约数GCD的BASH函数

以下是计算GCD的BASH代码

#!/bin/bash

## 计算两个数的最大公约数

gcd() {
    local a=$1
    local b=$2

    while [ $b -ne 0 ]; do
        local temp=$b
        b=$((a % b))
        a=$temp
    done

    echo $a
}

# 检查是否传入了两个参数
if [ $# -ne 2 ]; then
    echo "用法: $0 <number1> <number2>"
    exit 1
fi

## 检查两个参数是否为正整数
if ! [[ $1 =~ ^[0-9]+$ ]] || ! [[ $2 =~ ^[0-9]+$ ]]; then
    echo "两个参数必须为正整数。"
    exit 1
fi
if [ $1 -le 0 ] || [ $2 -le 0 ]; then
    echo "两个参数都必须大于零。"
    exit 1
fi

# 调用 gcd 函数并打印结果
result=$(gcd "$1" "$2")
echo $result

输入校验流程

  1. 检查是否传入了两个参数
  2. 使用正则表达式确保输入为整数:=~ ^[0-9]+$
  3. 确保两个数都大于 0

使用示例

两个互质整数co-prime,它们的最大公约数为1。

命令 输出
./gcd.sh 24 36 12
./gcd.sh 7 13 1

小提示:

  • 使用 chmod +x gcd.sh 让脚本可执行
  • 然后运行:./gcd.sh 12 30

BASH小技巧

英文:Compute GCD in Bash with Input Validation

本文一共 599 个汉字, 你数一下对不对.
Bash 编程: 计算两个正整数的最大公约数/GCD. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c Bash 编程: 计算两个正整数的最大公约数/GCD BASH BASH 学习笔记 数学 程序设计 算法 计算机
The post Bash 编程: 计算两个正整数的最大公约数/GCD first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 步步高学生电脑上 Basic 编程语言 peek 用法示例 步步高学生电脑 是8位FC机的经典之作.它上面的BASIC有三个版本 1.0, 2.0 和 2.1 2.1 版本有个在线帮助,实际上是 help.cmd 1.0 是用 Esc 键退回到 DOS 的,...
  2. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  3. 穷举算法的应用 – 去除EXCEL文件中的保护 EXCEL 是可以用密码来保护的. 比如 这个EXCEL 就用了密码保护. 打开EXCEL文件 你会注意到 无法编辑 无法查看宏(VBA)的代码. 去除保护很简单 第一步先编辑宏 VBA 把下面的VBA代码拷贝到VBA编辑器里 并按下F5运行 1...
  4. 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...
  5. 一张图告诉你北京的雾霾有多严重 一北京的朋友朋友圈发的: 左上为全新口罩;右上为全新口罩本周一到周五每天室外戴20分钟左右;左下为全新口罩今早室外+公交车戴一个半小时;右下为全新口罩今早开车戴一小时左右. 还有这图 空气污染 – 红色的是严重的.中国,尤其是华北地区,是全球最红的地区,没有”之一”. 本文一共 113 个汉字, 你数一下对不对. 一张图告诉你北京的雾霾有多严重. (AMP 移动加速版本) 赞赏我的几个理由. ¥...
  6. 世界再无OneKey币圈美元虚拟卡了 我前两年就了解到OneKey这个币圈虚拟货币出金卡,不过去年年底才注册使用的。当时还花了99美元一步升级到顶级黑卡。然后这一年陆陆续续用了这卡,但用得不多,主要就用于支持一些VPS主机费还有CloudFlare,ChatGPT Pro等。 这个卡是美国地址,卡号有两个段,Visa 和 Mastercard,不过由于地址是美国的,刷卡可能会有问题。比如我ChatGPT Pro注册帐号是英国的,然后用这卡支付了几个月,突然有一天帐号就被封,被告知:您的付款记录很可疑。 印象中,用这虚拟货币Crypto Card美元出金卡有手续费,但是并没有啥Cash Back返现卡,如果是非美元购物则会有另一笔手续费,所以我很少用这卡出金变现。 前两个月,OneKey宣布关闭: 关于 OneKey Card 服务停用通知 尊敬的用户,为提高服务质量和优化产品供应,我们将按照以下时间表停用...
  7. 英国房子的EPC节能报告(Energe/Efficiency Performance Certificate) EPC (Energe/Efficiency Performance Certificate) 是英国房子的节能报告, 法律上规定, 每个房子都必须要有一个EPC报告, 报告的有效期为十年. 房东在把房子出租或者想卖房的时候, 这个EPC就必须有效, 在一些情况下 比如出租房子的时候, 这个EPC报告还必须符合一些最低标准, 比如房子必须满足 F档(类似及格线)...
  8. WordPress 最简单的过滤垃圾评论的方法 WordPress 很多垃圾评论都是由程序直接调用访问 wp_comments.php 造成的. 所以我们可以在 functions.php 文件里加入以下代码 新增一个过滤 简单的检查是否是直接调用. 1 2 3 4 5 6...

通过脚本让电脑实现模拟按键(一直在线功能): VBScript/JScript/PowerShell


本文详细讲诉了用脚本实现定时模拟计算机按键,用于保持系统一直在线的状态。脚本可以使用VBScript、JScript和Powershell。这三种脚本语言都是微软/Microsoft的,不过前两种已经要被淘汰了。

在 Windows 环境下,这三种脚本(PowerShell、VBScript 和 JScript)都通过 CreateObject 来调用 COM 对象 WScript.Shell,以实现模拟按键的功能。例如,可以每隔一分钟模拟按下 Scroll Lock 键一次,从而保持“在线”状态(Keep Alive)。Scroll Lock 键在某些键盘上可能不存在,其作用是切换滚动锁定状态,连续按两次不会对系统造成实际影响。

模拟按键:自动化任务脚本

有时候,你可能想模拟按键(键盘输入),例如为了自动化一些任务,相比查找 API 并写脚本,通过重复按键可能更简单。例如,你想打开任何聊天窗口并输入 “Hello!” 100 次,可以使用 PowerShell 编写一个脚本,它先暂停几秒钟,然后模拟按键。

你可以通过在 Windows 中使用 PowerShell 脚本创建 Wscript.Shell COM 对象来实现。

$WShell = New-Object -com "Wscript.Shell"
$WShell.sendkeys("Hello!")

要重复 100 次,可以在 PowerShell 中使用 FOR 循环:

$WShell = New-Object -com "Wscript.Shell"
for (($i = 0), ($j = 0); $i -lt 10; $i++)
{
    $WShell.sendkeys("Hello!")
    $WShell.sendkeys("{ENTER}")
}

要运行一个 PowerShell 脚本,例如 .ps1 文件,你可以在 PowerShell 提示符中输入该脚本的完整路径。PowerShell 提示符也支持逐行输入 PowerShell 语句。

Powershell 脚本通过按键保持在线

powershell-sendkeys-keep-alive 通过脚本让电脑实现模拟按键(一直在线功能): VBScript/JScript/PowerShell Powershell Powershell 学习笔记 小技巧 折腾 程序设计 计算机 计算机

Powershell每分钟按Scroll Lock键用于保持Keep Alive在线

基于这个方法,我们可以每隔一段时间发送 Scroll-Lock 按键,直到脚本被终止。一些键盘甚至没有 Scroll-Lock 键。这个思路是模拟按键,使你的聊天程序(如 Microsoft Teams、Slack、Discord、Google Chat、Telegram 等)认为你仍然在线,从而不会将你的状态设置为 “离开”(AFK)。

$WShell = New-Object -com "Wscript.Shell"
while ($true)
{
  $WShell.sendkeys("{SCROLLLOCK}")
  Start-Sleep -Milliseconds 100
  $WShell.sendkeys("{SCROLLLOCK}")
  Start-Sleep -Seconds 120
}

VBScript脚本自动按键

Microsoft VBScript 简单又方便。以下是 VBScript 版本。你可以将脚本保存为 .vbs 文件并双击运行。或者在命令行中通过 “start.exe send-keys.vbs” 或 “cscript.exe send-keys.vbs” 运行它(假设脚本名为 send-keys.vbs)。

Dim WShell
Set WShell = CreateObject("Wscript.Shell")
Const ASecond = 1000
Const AMinute = 60000
While True
  WShell.SendKeys "{SCROLLLOCK}"
  WScript.Sleep ASecond
  WShell.SendKeys "{SCROLLLOCK}"
  WScript.Sleep AMinute
Wend

JScript脚本自动按键

Microsoft JScript 类似于 Javascript,也可以在 Windows 上运行。以下是 JScript 版本,你可以用和 VBS 相同的方法来运行。

// alternatively
// var WShell = WScript.CreateObject("Wscript.Shell");
var WShell = new ActiveXObject("Wscript.Shell");
var ASecond = 1000;
var AMinute = ASecond * 60;
for (;;) {
  WShell.SendKeys("{SCROLLLOCK}");
  WScript.Sleep(ASecond);
  WShell.SendKeys("{SCROLLLOCK}");
  WScript.Sleep(AMinute);
}

顺便提一下,JScript 不支持 const 关键字和现代 Javascript 的其他语法特性。

总结

本文展示了如何使用 PowerShell、VBScript 或 JScript 来模拟按键。一种用途就是通过模拟 SCROLLLOCK 按键来让你的聊天软件(如 Slack、Discord、Microsoft Teams、Telegram 等)显示为 “一直在线”。此外,如果你不希望电脑在你离开键盘时进入睡眠状态(尽管可以通过设置来控制),这类脚本也会派上用场。

需要注意的是,由于安全原因,这类脚本(创建 WScript.Shell COM 对象)可能会被公司的安全策略所屏蔽。不过,你仍然可以在 PowerShell 终端中逐行输入命令来绕过限制。

英文:How to Send Keys using PowerShell or VBScript or JScript via WScript.Shell COM Object (Simulate Keystrokes)?

本文一共 723 个汉字, 你数一下对不对.
通过脚本让电脑实现模拟按键(一直在线功能): VBScript/JScript/PowerShell. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c 通过脚本让电脑实现模拟按键(一直在线功能): VBScript/JScript/PowerShell Powershell Powershell 学习笔记 小技巧 折腾 程序设计 计算机 计算机
The post 通过脚本让电脑实现模拟按键(一直在线功能): VBScript/JScript/PowerShell first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. Chrome 浏览器上的快速标签链接 我很久之前练手PHP和MYSQL做了一个长网址变短的小工具(免费) https://rot47.net/_url/. 添加记录的表单在: https://rot47.net/_url/add.php 这样还是太麻烦, 因为用户还得拷贝和粘贴网址, 为了方便, 在PHP程序里支持从URL参数里获取想添加的长网址, 比如可以这样使用: https://rot47.net/_url/add.php?p=https://helloacm.com 然后, 我们就可以把下面HTML+JAVASCRIPT的代码放到页面上, 让用户添加成标签(可以直接把这个链接拖到上面的快速标签栏) <a rel="nofollow"...
  2. 新的旅途 – 离别总是伤感的, 离开了一起创业的公司 2周前, 正式离开了一起创业的公司, 这公司是我博士毕业后的第一份正式工作, 待了8年多了, 离别总是伤感的. 我是9月初提的离职, 三个月 Notice Period, 最后的几周交接完工作确实没有什么压力了. 11月30号, 在公司最后一天, 公司有个习惯, 对于 Good...
  3. 租车被收了两份保险钱 前不久去北爱游玩的时候在 booking.com/rentalcars.com 上租了车, 当时一共付了92英镑, 其中36英镑多是保险钱. 然而, 当飞机落地后我去 Budget 取车的时候又交了92英镑钱. 当时我在柜台的时候就有点犹豫, 但是没办法, 必须交, 不交就不给钥匙. 当然92英镑还包括路税. 后来回来就想想不对劲,...
  4. 测测你的幸运 – Linux Fortune-Teller LINUX 下有很好很好玩的命令,之前已经介绍过: figlet, rig, curl. 现在推荐另一个 命令 fortune 是用来随机显示一段(句)话的.fortune 在英文里就是幸运的意思. 这个命令可以不需要 参数 如果没有 可以通过 apt-get...
  5. Minuet in C – 小步舞曲C Posted Youtube – 油管地址 孩子弹琴的时候最帅了. 我现在成了我儿子的粉丝了. Eric (Aged 6) is playing “Minuet in C” when...
  6. 上了年纪痛风脚崴了的惨痛经历(尿酸过高) 痛风是一种疼痛性关节炎, 当血液中的尿酸水平高, 导致晶体形成并积聚在关节内或关节周围, 就会发生痛风. 当人体分解一种叫做嘌呤的化学物质时, 就会产生尿酸. 嘌呤自然存在于您的身体中, 也存在于某些食物中. 尿酸通过尿液从体内排出. 上两周, 和媳妇吵架, 然后就自己一人睡, 有一天起床后脚踝就开始疼了, 然后明显比左脚肿了. 我刚开始就以为是睡觉的时候不小心姿势不对,...
  7. 优衣库 感觉像炒作 这几天 这个在北京三里屯 ‘优衣库’ 试衣间自拍的视频真的很火, 男女主角均被人肉. 不可否认 这个效果还真的不错 因为我之前根本不知道 “优衣库” 是干嘛的 很刺激 在试衣间XXOO是多么爽的事情 女主角 95后妹子 长相甜美....
  8. 今晚可能是英国倒数第三次冬令时时间调整 来英国生活过的人都知道 英国有一个很有意思的夏令时和冬令时时间调整. 夏令时是每年3月份的最后一个星期天凌晨会暴力的把时间往后调整1个小时, 也就是1点的时候很神奇的时间会自动变成2点. 冬令时是相反, 在每年的十月份最后一个周日凌晨暴力的把时间往前调整一个小时, 也就是2点神奇的变成1点. 现在大多数电子设备都能自动调整时间了, 比如你的智能手机和电脑. 但是传统的一些钟表, 还需要人为的调整时间. 夏令时 (Daylight Saving Time)调整的那一天,...

如何使用 GDB 或 LLDB 调试器重复运行程序直到错误


gdb-debugger 如何使用 GDB 或 LLDB 调试器重复运行程序直到错误 gdb / lldb 小技巧 程序员 编程 计算机 计算机 调试

GDB Debugger 调试器

如何使用 GDB 或 LLDB 调试器重复运行程序直到发生错误

在调试程序时,有时候我们希望一直运行程序直到遇到错误。GDB(GNU 调试器)和 LLDB(LLVM 调试器)都提供了自动化此过程的方法。

这在调试一些不稳定的程序非常有用,例如有时候写的一些单元测试可能随机崩溃SegFault。最近我在调试一个测试每跑1000次就有一次崩溃的时候就发现gdb/lldb调试器非常有用。

简介:GDB vs LLDB

GDB(GNU 调试器)和 LLDB(LLVM 调试器)是用于低级别应用程序调试的强大工具。GDB 传统上用于由 GCC 编译的程序,而 LLDB 是 LLVM 项目的一部分,与 Clang 无缝配合。两者都提供强大的功能,但 GDB 在 Linux 环境中更常见,而 LLDB 在 macOS 上以及处理 Swift 时更受青睐。

自动化执行直到发生错误

调试重复性任务可能很乏味。通过自动化这些任务,直到发生错误,可以节省大量时间和精力。以下是如何在 GDB 和 LLDB 中设置重复执行直到遇到错误的步骤。

GDB 脚本

下面是一个 GDB 脚本,它会重复执行,直到发生错误:

repeat_until_error.gdb

while 1
  run
  if $_exitcode != 0
    echo "发生错误,退出码:$_exitcode\n"
    break
  end
end

要运行此脚本,将其保存为 repeat_until_error.gdb,然后使用以下命令执行 GDB:

gdb -q -x repeat_until_error.gdb ./your_program

或者,当你处于 gdb 提示符时,运行:

source repeat_until_error.gdb

“run” 命令用于启动程序,你可以为它添加参数,例如:

run param1 param2 ...

你也可以使用 “r” 作为 “run” 的简写。

LLDB 脚本

类似地,在 LLDB 中,你可以使用以下脚本实现相同的效果:

repeat_until_error.lldb

while (1)
  run
  process launch
  if (process status != 0)
    script print("发生错误,退出码:", lldb.process.GetExitStatus())
    break
  end
end

要运行此脚本,将其保存为 repeat_until_error.lldb,然后运行:

lldb --source repeat_until_error.lldb ./your_program

或者,在 lldb 提示符处运行:

source repeat_until_error.lldb

在 “run” 命令之后,你还可以通过附加参数来启动程序,例如:

run param1 param2

总结

GDB 和 LLDB 都提供了方便的方法来自动化调试任务,选择使用哪种工具通常取决于你所使用的平台和工具链。GDB 与 GCC 的集成使其成为 Linux 开发者的首选,而 LLDB 在与 Clang 和 macOS 的无缝配合方面同样强大。

自动化重复的调试命令可以为你节省大量时间和精力 —— 无论你使用 GDB 还是 LLDB,这些脚本都能帮助你简化工作流程。

gdb / lldb 调试

英文:How to Repeat Until Errors using GDB or LLDB Debugger?

本文一共 603 个汉字, 你数一下对不对.
如何使用 GDB 或 LLDB 调试器重复运行程序直到错误. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c 如何使用 GDB 或 LLDB 调试器重复运行程序直到错误 gdb / lldb 小技巧 程序员 编程 计算机 计算机 调试
The post 如何使用 GDB 或 LLDB 调试器重复运行程序直到错误 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  2. 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...
  3. 同一台服务器上多个WORDPRESS站点的一些设置可以移出去 我自从把所有网站都挪到一处VPS服务器上 就发现很多事情省事很多 可以同时管理多个网站 包括 WORDPRESS博客. 比如我有四个WORDPRESS博客 然后我就把通用的一些资料给移出去 移到 HTTP或者HTTPS都不能直接访问的文件夹里这样就更安全许多. 文件 wp-conn.php 存储了 相同的数据库资料. 1 2...
  4. 比特币最近波动有点大: 一天牛市一天熊 比特币10万美金以内都是最后上车的机会! 比特币近期的价格波动可以归因于多个关键因素,包括地缘政治动态、监管变化以及加密行业内的重大安全事件。其中一个主要影响因素是美国前总统唐纳德·特朗普对乌克兰和加密货币监管的立场变化。据报道,特朗普再次当选,他可能会推动减少美国对乌克兰的支持,这可能会影响全球金融市场和风险偏好。同时,特朗普正在将自己塑造为亲加密货币的候选人,表示有意让美国成为一个更加友好的加密货币环境。这一立场引发了市场对监管政策可能发生变化的猜测,导致市场情绪在乐观和不确定性之间波动。 特朗普对俄乌战争的态度 美国第43届总统唐纳德·特朗普已经在2025年1月当选并正式上任(第二次),那么他的政策可能会对比特币价格的波动产生更加直接和显著的影响。他政府对乌克兰和加密货币监管的立场已经不再是猜测,而是正在实际塑造市场的关键力量。 特朗普(Donald Trump)减少美国对乌克兰的支持,全球投资者可能会预期地缘政治稳定性发生变化,从而增加对比特币作为避险资产的需求。同时,他的亲加密货币立场可能正在推动市场的乐观情绪。如果他的政府推出有利于加密行业的监管政策,例如明确的合规指南或减少监管审查,可能会吸引更多机构投资者进入市场,并促进更广泛的加密货币采用。然而,政策的快速变化也可能导致短期市场剧烈波动,因为市场需要时间来消化新的政策动向。 朝鲜黑客盗取Bybit交易所15亿美元的ETH 另一个显著影响比特币价格的事件是近期涉及朝鲜黑客组织“Lazarus”的15亿美元以太坊被盗案件。据报道,Bybit交易所(全球第二)这些被盗的ETH已经被清洗,此次大规模黑客攻击引发了人们对加密行业安全性的担忧。此类安全事件不仅会削弱投资者信心,还可能引发更严格的监管审查,导致短期市场动荡。此外,被盗资金的大规模流动和出售可能对市场流动性造成冲击,进一步加大价格波动。随着这些事件的持续发酵,比特币价格正受到政治决策、监管预期以及安全挑战等多重因素的影响。 与此同时,与朝鲜黑客组织 Lazarus 相关的 15 亿美元以太坊被盗事件仍在影响加密市场。由于这些被盗 ETH 已被清洗,人们对加密行业安全漏洞的担忧持续存在,同时也可能引发更严格的监管审查。政治、监管和安全等多重因素交织在一起,共同导致了比特币近期的剧烈价格波动。...
  5. 公司给配了台高配DELL笔记本 早上例会结束的时候我顺便说了一句 我的笔记本有点慢, 当时我并不知道我的经理远程用电话也参加会议了(他全程在听), senior staff SE 对着电话说, “peter, you hear that? btw, my disks are...
  6. 5美元的 Raspberry PI – Zero 树莓PI Raspberry PI 来自于英国, 从第一代模型 A, 到后来的 B, B+ 甚至 是2代, 休积都很小 价钱也一直在 30美元左右. 当然在英国会贵一点 大概在...
  7. 英国硬盘数据恢复失败的经验和教训 上一周, 不小心触碰了机箱后面的电源线, 接触不良, 结果机器再也开不起来了. 显示 Invalid Disk, Replace. 大概就是主硬盘MBR区坏了. 我以为是接触不良, 于是反复插把硬盘卡槽好几次, 机器认不出, 硬盘也没声音, 于是便网上搜索了一个剑桥评价最高的 硬盘数据恢复公司...
  8. 优化设计 个人主页 并且 PageSpeed Insights 双项 100分 坛子的个人主页 www.tanzhijun.com 不错 很适合个人主页的模板. 而且是手机友好. 于是我照着把 我的主页改了改. https://steakovercooked.com 并且做了几点修改: 0. 使用 google mod_pagespeed 把 JS,...

[原创漫画] 《生命,科技,灵魂,死亡》,以及制作感想

作者 石樱灯笼
2025年3月14日 01:43

该内容仅供娱乐,请勿过分解读。
这是一篇使用AI工具辅助创作的作品。
内容包含以下已知问题:

  • 人物形象连贯性错误
  • 作画细节错误
  • 大量的暗示
  • 大量无用的细节描绘

该内容可能会引起部分人引人不适,请谨慎选择观看 。
本作品不适合儿童以及心理承受力较弱者。

screenshot_1808684507679234-20250310161733

B站视频链接:《生命,科技,灵魂,死亡》

我是期望能有人点到B站然后在底下留评论。现在各个平台都已经被算法掌控了,有互动帐号才能活。没互动那就是死。

WordPress这坨狗屎现在乱改用户的HTML嵌入代码,然后B站的自动播放又没法在代码里禁用掉,所以我这里就不嵌入播放器代码了。


结论

假如你觉得这个漫画非常的「抽象」,那就对了。

制作感想

可以说年后就一直都在搞这个作品。

期间甚至把整个操作系统都从 Linux Mint 20.3 升级到了 Linux Mint 22.1 (跳过了1个大版本4个小版本,或者说2个大版本3个小版本?),写了一堆 nemo actions,写了一堆脚本,更新了本地的各种应用工具,测试了一堆AI相关的工具,写了一个 userscript,甚至还把 danielgatis/rembg 常年都修不好的GPU加速给了,还做了 DOCKER GPU 加速版本,你说我也不会 Python 啊竟然还做出了这种事,想想真是疯狂。

前几年挖的各种大坑不仅没填,新大坑开得一个接一个……这些玩意要是能赚钱我早就成暴发户了。

关于AI的感想本篇文章先不讲。我个人是没什么兴趣凑这个烂热度的,整个互联网这几年就跟鬣狗一般,什么热就食什么,不论腥臭。当年韩国人的常压室温超导体,各种人“复现成功”;现在AI也一样,各种狂热,但是实际应用或相关创作基本没有,疯癫的自媒体,遍地的海乙那(这玩意竟然15年前有人写过了!)。


创作契机

最初阶段

契机这玩意很简单。就是随便在网上看看有哪个大厂公开免费支持用户用AI工具乱搞。毕竟如果没有对应工具或者能力的话,什么都是胡扯。

其实我对 线上工具 尤其是 大厂线上工具 非常反感的。这些大厂现在基本没有什么良心,自己的服务功能乱改,而且随时跑路,不仅给你玩个 免费是最贵 , 还要玩得你对工具有依赖性之后 杀自己的产品诛用户的心

所以我在本地部署了缩放工具和去背景工具。图片生成工具其实我也部署了 ComfyUI,但是只要模型大一点,我这个 8G 版的 GTX1080 在 VAE Decode 阶段就直接黑屏重启。绝对不是供电不足的问题,因为KSamper阶段的时候显卡就已经跑满 200w 了。

screenshot_on_b85m_by_flameshot_at_2025-03-12_01-14

扯远了。关于AI相关的内容下篇再讲。

总之是选定了一个线上的AI图像生成工具。

内容构思

这玩意你要是能看懂那大概猜得出来我是怎么想的。

如果你看不懂我也懒得管。

我这个人非常讨厌目前互联网平台的各种解说视频。这是怎么回事? 观众是没有脑子吗?看个作品还要旁边有个人解说才看得懂?


制作过程

AI出图这玩意我就不说了。主要讲讲其他的。

图片序列

首先是把所有图片都整理到一起,然后根据剧情大纲分成多个目录。

png_screenshot_on_b85m_by_flameshot_at_2025-03-13_23-55

再把图片一个一个放入 NLE 的时间轴中。

这时候第一个痛点就来了,图片太多的时候,记不住哪个图片用过哪个图片没用过。又不能移动图片(移动了NLE不就找不到图片了么)。

这时就想到了 Linux Mint 文件管理器的原生功能:打标记。

然而这货……不支持文件多选。半拉喀叽。

最后只好写俩个 nemo_actions 来处理这事情。

screenshot_on_b85m_by_flameshot_at_2025-03-14_00-05

然后就发现这玩意 Bug 真多。

首先这玩意在用 nemo_actions 设置后图标文件管理器不会刷新,需要手动刷新,很烦。触发文件管理器刷新的方式是修改文件,网上给出来的方法都是 直接touch,但是那不就更改了文件修改时间了吗?最后解决办法也很逗乐:

touch $inputfile -r $inputfile

设置文件的修改时间为文件自己的修改时间……

然后写文章的时候才发现这玩意还有另一个Bug,就是媒体文件在默认图标大小时不能正常显示标记……

png_screenshot_on_b85m_by_flameshot_at_2025-03-14_00-05_1

批量调整图像

为了省事,我在导入图片的时候用的是原图大小,1024×576的。图片太小了,但是全部放大太浪费资源,很多图片只是整理出来了,并没有被采用。整理出来的图片如果再手动复制粘贴到相同结构的目录里也很费劲。

于是用 bash shell 将所有引用的图片从 mlt 文件中输出出来,再写个脚本打水印和放大。

png_screenshot_on_b85m_by_flameshot_at_2025-03-14_00-15

有经验的用户应该能看出这段代码很大一部分是AI生成的。

然后只要批量更改 mlt 文件的图片引用路径,所有引用的图片就都处理完毕了。

BGM

首先是背景音乐这一块。首先我就不想用大家都听过的。很多BGM都用烂了,一听就恶心,但又很神奇的是国内这些视频网站用户貌似对吃屎免疫……但是后来仔细观察发现,大多数用户脑电波是直的,只有对着他们放对应的BGM才有对应的反应。

vlcsnap-2025-03-13-23h51m23s547

vlcsnap-2025-03-13-23h51m40s373

反正他们也不看我的视频,不管他们。

专门去 DOVA-SYNDROME 找了些 BGM,收获蛮多。

用了四首曲子把整个视频分成了四段。

结果很诡异的是传到B站后第二段结尾和第三段开头不知为何混到一起了,本地原本没这个问题。

改图

原本生成的图片里是没有任何文字内容的。

我也不想加任何字幕和对话。

我期望是根据角色的神态和动作,让用户自己感觉,画中的角色「在想什么」,「想说什么」,「想做什么」,「在做什么」。一千个哈姆雷特是假的,但要多少是多呢,有一个算一个吧。

但是最后还是加了点内容上去,因为我觉得很多内容还是太过于晦涩和抽象了。

但是加了之后又觉得有点后悔。

我本来期望,是想让用户在前半段根本看不懂女主究竟是在干什么,是怎么回事。加了内容之后再结合标题就跟直接破案了一般,无趣了。

(果然还是由于没有相关创作经验而带来的错失)

剧本

我是本着传统的叙事结构:「起承转合」,其变体「起承转合暗」而考虑的剧本。

第三段,在结尾处,专门设计了完全没有声音的一段。

第四段则做得特别短。专门让故事结束得十分突然。然后把一张啥都没有的背景图连带BGM扔给观众。

最后的结尾图却是我做完大部分视频内容后突来的灵感。

最后加工

最后再重新开一个视频项目,做一段声明,然后用 FFmpeg 无损把俩视频贴在一起就完事了。

png_screenshot_on_b85m_by_flameshot_at_2025-03-11_12-07

本来还想做个英文版来着,但是想到改图好麻烦,懒了,以后再说。


总结

总之算是一件事情了了。

screenshot_20250303005229

奖励自己摆烂一阵子。

The post [原创漫画] 《生命,科技,灵魂,死亡》,以及制作感想 first appeared on 石樱灯笼博客.

[userscript] 从豆包下载无水印图片

作者 石樱灯笼
2025年2月24日 20:32

心血来潮,做了个 从豆包下载无水印图片 的 userscript 。

没啥技术含量。

截图

snap-1

snap2-1

 

安装及使用

具体的安装和使用方式见Greasyfork脚本安装地址或Github源码仓库。

 

脚本安装地址

Greasyfork :<https://greasyfork.org/scripts/527890>,点击页面上的  安装此脚本  即可。

 

源码

Github:<https://github.com/catscarlet/Download-Origin-Image-from-Doubao-without-Watermark>

 

废话

这个算是今年第一篇文章。

其实一直没闲着,搞了一堆屁事,或者说被一堆屁事搞。

文章又积压了,压了一堆,没精力写。

 

The post [userscript] 从豆包下载无水印图片 first appeared on 石樱灯笼博客.
❌
❌