#!/bin/sh # Give this script a .pdf and it will attempt # to return a proper .bib citation via doi. # Internet connection required. if [ -f "$1" ]; then # Get the doi from metadata, if not possible, get # doi from pdftotext output, if not possible, exit. doi=$(pdfinfo "$1" | grep -io "doi:.*") || doi=$(pdftotext "$1" 2>/dev/null - | grep -o "doi:.*" -m 1) || exit 1 else # If not given file, assume argument is doi doi="$1" fi # Check crossref.org for the bib citation. curl -s "http://api.crossref.org/works/$doi/transform/application/x-bibtex" -w "\\n" | sed -e "/^[^\\(\\t\\|@\\|}\\)]/d"