как открыть файл и сделать снимок экрана и близко?

У меня есть некоторые файлы PDF в каталоге. в команде, как я могу открыть и сделать снимок экрана и закрыть файл PDF, один за другим (на самом деле сценариями удара)?

Я думаю, что существует некоторая команда, чтобы открыть и закрыть файлы как pdfs, но я не знаю.

1
задан 28 January 2020 в 09:02

2 ответа

Это - Простой вопрос программирования (SMOP), но так как Вы хотите иметь две вещи, происходящие сразу (дисплей .pdf, сделайте снимок экрана), это не острота.

Читать man bash;man kill;man xpdf;man gnome-screenshot;man basename и, снова, man bash.

Затем запишите простое bash сценарий, чтобы сделать то, что Вы хотите, что-то вроде этого ./tryit:

#!/bin/bash
if [[ "$1" = "-d" ]] ; then
    shift
    set -x
fi

screenshotdir="/tmp/my_screenshots"
[[ -d "$screenshotdir" ]] || mkdir "$screenshotdir"

while [[ "$#" != 0 ]] ; do
    # thisone is the one we're processing this time
    thisone="$1"
    # look at a different one next time
    shift
    outfile="$( basename -s .pdf "$thisone").png" 

    # display the file, in the background
    xpdf "$thisone" &
    # remember the PID
    pidofxpdf=$!
    # give xpdf time to start
    sleep 3
    # take the screenshot
    gnome-screenshot --file="$screenshotdir/${outfile}"
    # kill the xpdf
    kill -9 $pidofxpdf
done
exit 0

Затем сделайте это исполняемым файлом

chmod +x ./tryit

Наконец, генерируйте список имен файлов и подайте его к tryit:

find directory -maxdepth 1 -name '*.pdf' -print0 | xargs -0 -r ./tryit -d
2
ответ дан 30 January 2020 в 23:28

В Вашем случае я шел бы вперед и непосредственно преобразовал бы PDFs в изображения.
Установка convert:

apt-get install imagemagick

Сделайте преобразование для каждого PDF в текущем каталоге:

ls *.pdf | xargs -n1 -I{} convert -density 300 {} {}.jpg
2
ответ дан 30 January 2020 в 23:28

Другие вопросы по тегам:

Похожие вопросы: