Voilá! Шаги 2 и 3 следуют:
Это работает, хотя это ужасно синхронизирует очень важный, тонкая настройка, как Вы считаете целесообразным, пыталась прокомментировать это прилично, таким образом, Вы видите то, что продолжается.
Необходимо будет установить xdotool для этого для работы, поскольку мы моделируем нажатия клавиш, чтобы сделать снимок и выход (пакет 'xdotool')
О, и необходимо будет выключить функцию 'обратного отсчета' в предпочтениях, иначе она будет вероятный CTRL-Q (выход) из программы, прежде чем она на самом деле сделает снимок.
#!/bin/bash
#
# L Nix <lornix@lornix.com>
# takeapic : take a photo with Cheese, using default settings, then exit
#
# start cheesing (2> because mine whines about cheesy stuff (ha!))
cheese 2>/dev/null &
# give WM some time to start up program (fails without this)
sleep 5
# set so we can determine if valid window(s) exist(s)
WINDOWIDS=""
# wait for up to 90 seconds (tweak this)
COUNTDOWN=90
while [ ${COUNTDOWN} -gt 0 ]; do
WINDOWIDS=$(xdotool search --class "cheese" 2>/dev/null)
if [ -n "${WINDOWIDS}" ]; then
break
fi
sleep 1
COUNTDOWN=$(( ${COUNTDOWN} - 1 ))
done
# did we get anything?
if [ -z "${WINDOWIDS}" ]; then
echo "Cheese never started, something's wrong"
exit 1
fi
# the shutter button is ALT-T
for WIDS in ${WINDOWIDS}; do
# if you combine these like xdotool allows, it fails
xdotool windowfocus ${WIDS} 2>/dev/null
xdotool key alt+t 2>/dev/null
done
# pause a moment while taking photo
sleep 1
# now CTRL-Q out of the application
for WIDS in ${WINDOWIDS}; do
xdotool windowfocus ${WIDS} 2>/dev/null
xdotool key ctrl+q 2>/dev/null
done
#
Я думаю, что Вы ищете, этот продукт, это - открытый исходный код, и это назвало dbmail.
На основе он - описание, это походит точно, что Вы хотите:
DBMail является проектом с открытым исходным кодом, который включает устройство хранения данных сообщений электронной почты в реляционной базе данных. MySQL Currently, PostgreSQL, Oracle и SQLite могут использоваться в качестве бэкендов устройства хранения данных.