Назад | Перейти на главную страницу

Настройка псевдонима say для espeak в Ubuntu Linux

Я пытаюсь сделать совместимую команду «сказать» в Linux. Пока это работает:

alias say='echo "$1" | espeak -s 120 2>/dev/null'

Я добавляю это в /etc/bash.bashrc. Проблема в том, что это say вызывается из my_ruby_file.rb. Я понял, в чем проблема, но не могу изменить файл. В файле Ruby используется sh, а не bash. У меня вопрос, как я могу использовать этот псевдоним, чтобы say будет доступен во всех оболочках?

У каждой оболочки есть собственный файл псевдонимов. Вам нужно будет добавить псевдоним к каждому файлу оболочки, и даже в этом случае вам не гарантируется чтение файла псевдонима из оболочки, запущенной из Ruby. Лучше (в этом случае) создать сценарий с именем "say" где-нибудь по пути, распознанному в вашем .rb файле, вместо псевдонима оболочки.