blob: 273f9038e412f6d1838e4c2a7c93c902f2b8a0f0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
#!/bin/sh
[ -z "$1" ] && echo "Give either a pdf file or a DOI as an argument." && exit
if [ -f "$1" ]; then
# Try to get DOI from pdfinfo or pdftotext output.
doi=$(pdfinfo "$1" | grep -io "doi:.*") ||
doi=$(pdfinfo "$1" | grep -io "Digital Object Identifier.*") ||
doi=$(pdftotext "$1" - | grep -io "doi:.*" -m 1) ||
doi=$(pdftotext "$1" - | grep -io "DOI:.*" -m 1) ||
doi=$(pdftotext "$1" - | grep -io "doi.org/.*" -m 1) ||
doi=$(pdftotext "$1" - | grep -io "Digital Object Identifier.*" -m 1) ||
exit 1
else
doi="$1"
fi
# DOI never has spaces, so we can always take the last word in line
doi=$(echo "$doi" | awk '{ print $NF }')
echo "Detected DOI: $doi"
# Check crossref.org for the bib citation.
curl -s "http://api.crossref.org/works/$doi/transform/application/x-bibtex" -w "\\n"
#wget "https://doi.org/$doi"
|