Звучит сложно. Вот несколько методов, которые могут работать для вас.
Если у вас установлены инструменты учета процессов (в 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