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}`) }