之前分享过trilium的安装方式,trilium是个更新十分频繁的项目,升级方式基本上是备份好数据库,然后覆盖或重装,于是我写了一个脚本来实现,代码如下。

其中GitHub获取的是trilium汉化版的源,使用原版可以自行修改地址。其中/opt/trilium是我的安装路径,可以自行修改,包括删除原目录处和指定新目录处。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/bin/bash
set -e

# 拉取GitHub最新版本
release_url=$(curl -s "https://api.github.com/repos/Nriver/trilium-translation/releases/latest" | grep "browser_download_url.*trilium-cn-linux-x64-server.zip" | cut -d : -f 2,3 | tr -d \")
curl -L -o trilium.zip $release_url;

read -p "下载完成,开始安装?[y/n]: " choice
if [[ "$choice" =~ ^[Yy]$ ]]; then
# 停止trilium
systemctl stop trilium

# 删除原目录
cd /opt
rm -rf trilium
# 解压文件
cd ~
unzip trilium.zip
echo "解压完成。"
echo "移动文件夹。"

# 移动文件夹到指定目录
sudo mv trilium-linux-x64-server /opt/trilium
echo "重启trilium……"
systemctl start trilium

read -p "升级完成!是否删除压缩文件?[y/n]: " choice
if [[ "$choice" =~ ^[Yy]$ ]]; then
# 删除文件
cd ~
rm -f trilium.zip
echo "删除完成。"
fi
else
echo "安装中止。"
fi