Звучит сложно. Вот несколько методов, которые могут работать для вас.
Если у вас установлены инструменты учета процессов (в Linux найдите пакет с именем acct) и разрешение на их использование, вы можете узнать, когда и, возможно, на каком терминале вы работали convert:
lastcomm convert
Если это недоступно или неокончательно, вы можете выполнить historyкоманду в каждом экземпляре bash для поиска convertкоманд. Это найдет команды, которые были в файле истории, когда bash также запускался.
: >/tmp/convert.history
for w in $(seq 0 11); do
screen -p $w -X stuff \
'history | sed 's/^.*convert/'$w'&/" >>/tmp/convert.history
'; done
$(seq 0 11)перебирает номера ваших окон экрана. Обязательно пропустите окна, в которых в данный момент не запущен bash, но какой-то другой процесс, который интерпретирует ввод по-другому.
screen -p $w stuff …отправляет следующую строку в качестве ввода в указанное окно. Вам нужен перевод строки в конце строки.
- Файл
/tmp/convert.historyбудет содержать список строк, например 3 convert foo.jpg, если вы запускаете convert foo.jpgв окне 3.
setopt share_historyв/etc/zsh/zshrcтак этой проблемы никогда не случится со мной: P