nix/bin/open-attachment
2025-12-03 20:09:09 -06:00

31 lines
863 B
Bash
Executable file

#!/bin/bash
# Open attachment with correct extension based on mime type
tmpfile=$(mktemp)
cat >"$tmpfile"
mime=$(file --mime-type -b "$tmpfile")
case "$mime" in
application/pdf) ext=".pdf" ;;
image/png) ext=".png" ;;
image/jpeg) ext=".jpg" ;;
image/gif) ext=".gif" ;;
text/html) ext=".html" ;;
text/plain) ext=".txt" ;;
application/zip) ext=".zip" ;;
application/msword) ext=".doc" ;;
application/vnd.openxmlformats-officedocument.wordprocessingml.document) ext=".docx" ;;
application/vnd.ms-excel) ext=".xls" ;;
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet) ext=".xlsx" ;;
application/vnd.ms-powerpoint) ext=".ppt" ;;
application/vnd.openxmlformats-officedocument.presentationml.presentation) ext=".pptx" ;;
*) ext="" ;;
esac
if [[ -n $ext ]]; then
mv "$tmpfile" "${tmpfile}${ext}"
tmpfile="${tmpfile}${ext}"
fi
open "$tmpfile"