跳至内容

Jixun's Blog 填坑还是开坑,这是个好问题。

Mastodon

自动更新 FRP (frps/frpc)

自行根据需要修改,比如 架构(linux_amd64)、安装路径(PREFIX, 默认 /usr/local[/bin])。

#!/usr/bin/env bash

# FRP updater
# MIT License - Jixun<https://jixun.moe>

[ -z "${PREFIX}" ] && PREFIX=/usr/local
[ -z "${SUDO}" ] && [ "${NO_SUDO}" != "Y" ] && which sudo >/dev/null 2>&1 && SUDO=sudo

VER=$(${PREFIX}/bin/frpc -v)

RELEASE_URL="https://api.github.com/repos/fatedier/frp/releases/latest"
TMP_NAME=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
TMP_DIR="/tmp/frp_${TMP_NAME}"

mkdir -p "${TMP_DIR}"
pushd "${TMP_DIR}" >/dev/null

DL_URL=$(curl -s ${RELEASE_URL} | grep linux_amd64 | grep browser_download_url | cut -d '"' -f 4)

if (echo ${DL_URL} | grep ${VER}) >/dev/null 2>&1; then
	echo already latest version!
else
	wget ${DL_URL} -O frp.tar.gz
	tar zxvf frp.tar.gz
	cd frp_*

	$SUDO cp -f "frpc" "${PREFIX}/bin/"
	$SUDO cp -f "frps" "${PREFIX}/bin/"

	CUR_VER=$(${PREFIX}/bin/frpc -v)
	echo "Update FRP Complete (${VER} -> ${CUR_VER})!"
fi

popd >/dev/null

rm -rf "${TMP_DIR}"
继续阅读 »

upld 修改版

基于 lfiore/upld 修改而来,目前项目托管于 GitHub: JixunMoe/upld


主要修改:

  • 多图片(支持拖拽)上传
  • 多 url 批量上传
  • 允许禁止用户注册。
  • 举报并不会实际发送出来,因为懒得改发邮件的代码

改过的部分很挫,主要是自己用。所以基本上都是在原版的基础上缝缝补补来实现我要的那堆功能,也因为个人化太多了,所以就没提交到上游了。

继续阅读 »

Transmission WebUI 批量添加磁链

抓到一堆磁链,手动加入下载很麻烦… 于是做了个简单的脚本。

效果截图

(() => {

async function request (object) {
  return new Promise((resolve, reject) => {
    transmission.remote.sendRequest(object, resolve);
  });
}

async function addMagnets(urls) {
  for(let i = 0; i < urls.length; i++) {
    const url = urls[i];

    console.info('add %d/%d: %O', i + 1, urls.length, await request({
      method: 'torrent-add',
      arguments: {
        'paused': false,
        'download-dir': $("#download-dir").val(),
        'filename': url
      }
    }));
  }
}

addMagnets(`
此处填入地址,一行一个 (填入时删除此行)
`.split('\n').map(n => n.trim()).filter(n => n));

})()
继续阅读 »