Я пытаюсь написать скрипт для GeekTool, который будет отображать мои последние X (20) команды на моем экране.
Я могу либо отобразить файл, либо использовать вывод команды оболочки (предпочтительно).
Проблема в том, что когда я запускаю команду из скрипта, я получаю ~/bin/update_history_file.sh:fc:5: no such event: 0
как ошибка.
Мой файл сценария:
#!/bin/zsh --login
#history | tail -n 25 > /tmp/history.txt
export HISTFILE=~/.zsh_history
fc -l -20 -1
Команда fc
работает, если я запускаю ее из оболочки; однако, если я запускаю его из сценария, то это не удается. Я думаю, что это как-то связано с тем, что он не может прочитать файл истории, но не имеет подтверждения этому.
Я не могу напрямую использовать файл .zsh_history
как я использую расширенную историю ZSH и имеет встроенные метаданные.