4

В моем .screenrc у меня есть несколько строк, похожих на следующие:

screen -t qf1 bash

Так что для этого окна я сейчас выполняю bash. Вместо этого я хотел бы выполнить следующий псевдоним "qf", который является псевдонимом bash, который выполняет lynx для определенного URL.

Однако я получаю следующую ошибку:

"Cannot exec 'qf': No such file or directory"

Я знаю, что это, вероятно, как-то связано с путем, но обеспечивает:

screen -t qf1 lynx www.google.com

Тоже не работает Я знаю, что упускаю что-то очевидное. Спасибо!

1 ответ1

5

Скорее всего, ваши псевдонимы bash не доступны для просмотра. Есть несколько способов это исправить.

  • Если ваши псевдонимы находятся в .bash_profile , переместите их в .bashrc
  • Запустите оболочку bash с ключом -l чтобы заставить bash проанализировать .bash_profile

Посмотрите на этот вопрос для аналогичной проблемы.

РЕДАКТИРОВАТЬ

Есть две вещи, которые мешают этому работать:

Используйте синтаксис командной строки bash для передачи команд в новое окно

    screen -t "YayScreen" bash -c "man screen"

Псевдонимы - это боль на экране

Создайте bash-скрипт с нужным именем в вашем $ PATH (скажем, /bin) и назовите его так же, как в примере выше. Например, у меня есть очень простой псевдоним psgrep который ищет процесс по имени. Я создаю этот скрипт как /bin/psgrep:

#!/bin/bash
ps aux | grep -v grep | grep $1

Тогда я могу добавить это к моему .screenrc:

screen -t "Useless Command" bash -c "psgrep gnome"

Посмотрите это старое сообщение на форуме Mac OS X для более длинного списка того, что не работало.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .