如何用PowerShell替换qBittorrent配置文件中GitHub托管的追踪器值
Windows下自动更新qBittorrent追踪器并启动的PowerShell脚本
下面是满足需求的可复用脚本,代码里加了详细注释,适合基础编程知识的用户理解和修改:
# 定义qBittorrent配置文件路径(Windows默认路径,若你改了安装位置请自行修改) $configPath = "$env:APPDATA\qBittorrent\qbittorrent.ini" # 定义GitHub托管的追踪器列表文本文件URL,替换成你想用的地址 $trackersUrl = "https://raw.githubusercontent.com/xxx/xxx/main/trackers.txt" # 定义qBittorrent启动路径(默认安装路径,若自定义请修改) $qbPath = "${env:ProgramFiles}\qBittorrent\qbittorrent.exe" try { # 下载追踪器列表内容 $trackersContent = Invoke-WebRequest -Uri $trackersUrl -UseBasicParsing | Select-Object -ExpandProperty Content # 处理追踪器格式:将换行替换为qBittorrent要求的|分隔符,同时过滤空行 $formattedTrackers = ($trackersContent -split "`n" | Where-Object { $_ -match '\S' }) -join "|" # 读取配置文件所有行 $configLines = Get-Content -Path $configPath -Encoding UTF8 # 遍历配置行,找到目标配置项并替换值 $newConfigLines = $configLines | ForEach-Object { if ($_ -match '^Session\\AdditionalTrackers=') { # 替换为新的追踪器内容 "Session\AdditionalTrackers=$formattedTrackers" } else { # 其他行保持不变 $_ } } # 将修改后的内容写回配置文件(覆盖原文件) $newConfigLines | Set-Content -Path $configPath -Encoding UTF8 # 启动qBittorrent Start-Process -FilePath $qbPath Write-Host "追踪器更新完成,已启动qBittorrent" -ForegroundColor Green } catch { Write-Host "执行出错:$_" -ForegroundColor Red }
使用说明
- 修改路径:如果你的qBittorrent不是默认安装/配置路径,修改脚本里的
$configPath和$qbPath变量值 - 替换追踪器URL:把
$trackersUrl换成你找到的GitHub上的追踪器文本文件地址 - 运行脚本:
- 把脚本保存为
Update-QBittorrentTrackers.ps1 - 右键选择「用PowerShell运行」,首次运行可能会提示权限问题,执行以下命令解除当前用户的脚本运行限制:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser - 按提示输入
Y确认即可
- 把脚本保存为
注意事项
- 确保qBittorrent在运行脚本前是关闭状态,否则修改的配置可能不会生效
- 部分追踪器列表可能包含特殊字符,脚本已经做了基础处理,若出现异常可检查追踪器文本格式
内容的提问来源于stack exchange,提问作者ZeroKey
相关产品推荐
相关产品推荐

