23 lines
548 B
TypeScript
23 lines
548 B
TypeScript
import { readdir } from "node:fs/promises";
|
|
import { $ } from "bun";
|
|
|
|
const target = "/backup";
|
|
const backup = "/appdata";
|
|
|
|
const dirs = (
|
|
await readdir(backup, {
|
|
withFileTypes: true,
|
|
})
|
|
)
|
|
.filter((dirent) => dirent.isDirectory())
|
|
.map((dirent) => dirent.name)
|
|
.filter((dir) => dir !== "plex");
|
|
|
|
console.log("backing up", backup, dirs, "to", target);
|
|
|
|
for (const dir in dirs) {
|
|
console.log(`Backing up ${dir}`)
|
|
await $`XZ_OPT=-8 XZ_OPT=-T0 tar cJf ${target}/${dir}.tar.xz ${backup}/${dir}`;
|
|
console.log(`Finished backing up ${dir}`)
|
|
}
|