moving files around

This commit is contained in:
opal
2025-04-15 23:57:28 -07:00
parent 9e424589de
commit 330b094069
2 changed files with 97 additions and 0 deletions

47
.local/bin/todo Executable file
View File

@@ -0,0 +1,47 @@
#!/bin/sh
TODO_FILE="$HOME/docs/todo.txt"
ARCHIVE_FILE="$HOME/docs/todo-archive.txt"
TODAY="$(date +%Y-%m-%d)"
case "$1" in
add)
shift
echo "($TODAY) $*" >> "$TODO_FILE"
echo "Added: ($TODAY) $*"
;;
lsa)
nl -w2 -s'. ' "$TODO_FILE"
;;
ls)
grep -v '^x ' "$TODO_FILE" | nl -w2 -s'. '
;;
done)
if [ -z "$2" ]; then
echo "Usage: $0 done <task-number>"
exit 1
fi
TASK=$(sed -n "${2}p" "$TODO_FILE")
[ -z "$TASK" ] && { echo "Invalid task number."; exit 1; }
sed -i "${2}s/^/x ($TODAY) /" "$TODO_FILE"
echo "Marked done: $TASK"
;;
archive)
grep '^x ' "$TODO_FILE" >> "$ARCHIVE_FILE"
sed -i '/^x /d' "$TODO_FILE"
echo "Archived completed tasks to $ARCHIVE_FILE"
;;
tags)
if [ -z "$2" ]; then
echo "Usage: $0 tags <+tag|@context>"
exit 1
fi
grep "$2" "$TODO_FILE" | grep -v '^x ' | nl -w2 -s'. '
;;
help|*)
echo "Usage: $0 {add <task> | list | done <number> | archive}"
;;
esac

50
.local/bin/vault Executable file
View File

@@ -0,0 +1,50 @@
#!/bin/sh
CONTAINER=${2:-"$HOME/vault.hc"}
BASENAME=$(basename "$CONTAINER")
MAPPER_NAME="${BASENAME%.*}"
MOUNT_POINT="/mnt/$MAPPER_NAME"
case "$1" in
open)
if [ ! -f "$CONTAINER" ]; then
echo "Container not found: $CONTAINER"
exit 1
fi
if [ -e "/dev/mapper/$MAPPER_NAME" ]; then
echo "Already opened at /dev/mapper/$MAPPER_NAME"
exit 1
fi
mkdir -p "$MOUNT_POINT" || exit 1
if sudo cryptsetup open --type tcrypt "$CONTAINER" "$MAPPER_NAME"; then
sudo mount "/dev/mapper/$MAPPER_NAME" "$MOUNT_POINT" &&
echo "Mounted at $MOUNT_POINT"
else
echo "Failed to open container."
exit 1
fi
;;
close)
if mountpoint -q "$MOUNT_POINT"; then
sudo umount "$MOUNT_POINT"
fi
if [ -e "/dev/mapper/$MAPPER_NAME" ]; then
sudo cryptsetup close "$MAPPER_NAME"
echo "Closed and unmounted $MOUNT_POINT."
else
echo "Container is not open."
fi
;;
*)
echo "Usage: $0 {open|close} [path/to/container.hc]"
exit 1
;;
esac