#!/bin/bash # # Syntax: pdl [-h] # # Purpose: Shows the most recently changed .pdf file in the current directory # using acroreader, okular, xpdf, epdfview, gv, ghostview, or evince # (where the first command of this list that can be found is used). # The -h flag shows the help info for this command. # Created: Feb 9, 2005 by Bart De Schutter # Last revised: Jul 20, 2015 by Bart De Schutter # # See http://www.deschutter.info/util/scripts.html for the latest version of # this script. # Status: public # Category: pdf, latex if [ $# -ge 1 -a "$1" = "-h" ]; then sed '/^$/q;/^#!/d;s/^# //;s/^#//' $0 >&2 exit 1 fi if [ $# -ne 0 ]; then echo >&2 echo >&2 "ERROR: ${0##*/} requires no input arguments." echo >&2 sed '/^$/q;/^#!/d;s/^# //;s/^#//' $0 >&2 exit 1 fi pdffile=$( (ls -t *.pdf | head -n 1) 2>/dev/null) if [ -n "$pdffile" ]; then pdf_viewer=$(type -p acroread) options="" if [ -z "$pdf_viewer" ] then pdf_viewer=$(type -p okular) options="" if [ -z "$pdf_viewer" ] then pdf_viewer=$(type -p xpdf) options="-z page" if [ -z "$pdf_viewer" ] then pdf_viewer=$(type -p epdfview) options="" if [ -z "$pdf_viewer" ] then pdf_viewer=$(type -p gv) options="" if [ -z "$pdf_viewer" ] then pdf_viewer=$(type -p ghostview) options="" if [ -z "$pdf_viewer" ] then pdf_viewer=$(type -p evince) options="" if [ -z "$pdf_viewer" ] then echo >&2 echo >&2 "ERROR: No pdf viewer found on this system." echo >&2 exit 1 fi fi fi fi fi fi fi $pdf_viewer $options "$pdffile" & else echo "No .pdf files found in the current directory." fi