#!/bin/bash # https://docs.sheetjs.com/docs/demos/cli/bunsea cd /tmp rm -rf sheetjs-bunsea mkdir sheetjs-bunsea cd sheetjs-bunsea bun --version curl -o pres.numbers https://docs.sheetjs.com/pres.numbers cat >sheet2csv.ts <<EOF const XLSX = require("xlsx"); /* process.argv[2] is the first argument to the script */ const filename = process.argv[2]; /* read file */ const wb = XLSX.readFile(filename); /* generate CSV of first sheet */ const ws = wb.Sheets[wb.SheetNames[0]]; const csv = XLSX.utils.sheet_to_csv(ws); /* print to terminal */ console.log(csv); EOF bun install https://cdn.sheetjs.com/xlsx-latest/xlsx-latest.tgz bun run sheet2csv.ts pres.numbers bun build ./sheet2csv.ts --compile --outfile sheet2csv ./sheet2csv pres.numbers