#!/usr/bin/env bash # Change the title of a PDF file if [[ -z "$1" || -z "$2" ]]; then echo "Usage: $0 FILE TITLE [CREATOR [PRODUCER]]" echo echo "Arguments:" echo " FILE Path to the PDF document" echo " TITLE Content of the Title tag" echo " CREATOR Content of the Creator tag" echo " PRODUCER Title to give" exit 1 fi file="$1" title="$2" creator="$3" producer="$4" if [ ! -f "$1" ]; then echo "No such file or directory: $1" >> /dev/stderr exit 2 fi instructions=$(mktemp) echo "InfoBegin" >> "$instructions" echo "InfoKey: Title" >> "$instructions" echo "InfoValue: $title" >> "$instructions" if [ -n "$creator" ]; then echo "InfoBegin" >> "$instructions" echo "InfoKey: Creator" >> "$instructions" echo "InfoValue: $creator" >> "$instructions" fi if [ -n "$producer" ]; then echo "InfoBegin" >> "$instructions" echo "InfoKey: Producer" >> "$instructions" echo "InfoValue: $producer" >> "$instructions" fi copy=$(mktemp) cp "$file" "$copy" pdftk "$copy" update_info "$instructions" output "$file" rm "$instructions" "$copy"