Отображение состояния «коровьего» в каждой новой терминальной сессии

34

Я хочу отобразить cowsayсообщение в каждом окне терминала. Я использую команду

 fortune | cowsay

Любые идеи, как заставить его появиться всякий раз, когда я начинаю новый сеанс терминала?

theTuxRacer
источник

Ответы:

42
  • Откройте файл ~/.bashrc(или /etc/bash.bashrcесли он должен работать глобально для всех пользователей).

  • Добавьте следующее внизу файла:

    if [ -x /usr/games/cowsay -a -x /usr/games/fortune ]; then
        fortune | cowsay
    fi
htorque
источник
1
флаг -x означает «если существует»?
theTuxRacer
3
Да, "-x" проверяет, существует ли этот файл и является ли он исполняемым. Для получения дополнительной информации о testпрограмме см. Ее справочную страницу: man test( [ ... ]сокращение от test ...).
htorque
1
Работает для Bash на Windows 10 также!
LShaver
7

БОНУС: Если вы используете, bashвы можете создать ~/.bash_logoutфайл, и он будет выполняться при выходе из системы. Удостоверьтесь, чтобы он поспал на секунду или около того, иначе вы его никогда не увидите.

cowsay "See you later"; sleep 1

Joey1978
источник
вау, это здорово! Я сделаю это немедленно!
theTuxRacer
7

Я хотел бы рассмотреть вопрос об ограничении размера запрашиваемой команды состояния.

fortune -s | cowsay

Это даст максимум 160 символов. Это хороший размер для приветствия, все что угодно, кроме долгих состояний, затопит ваш терминал.

poulter7
источник
3

я использую

fortune | cowsay -f `ls -1 /usr/share/cowsay/cows/ | sort -R | head -1` -n

Это покажет случайное состояние, используя случайную «корову». Возможно, есть лучший способ получить случайную «корову», но у меня это отлично работает.

user418681
источник
1
Для Mac:fortune | cowsay -f `ls -1 /usr/local/Cellar/cowsay/3.04/share/cows/*.cow | sort | head -1` -n
Джибран
Ого, я знал, что Mac основан на Unix, даже не подозревал, что в нем есть коровы и прочее!
Роберт Седерхолм
0

Лучше использовать .bash_profile, потому что .bashrc также выполняется в таких командах, как scp, и они будут молча терпеть неудачу, если есть какие-либо выходные данные

Я нашел хороший скрипт на pastebin. в настоящее время использую его.

http://pastebin.com/f0QXTPbt

Schwertspize
источник
0

я использую

cowsay Welcome to Bash Shell в .bashrc.

Это будет запрашиваться каждый раз, когда вы открываете терминал.

Linuxian
источник