Запустить скрипт для входа в систему для всех пользователей

3

У меня есть сценарий с именем «als», который анализирует псевдонимы в файле .bashrc пользователя, который я бы хотел запустить для любого входа пользователя через SSH.

Это должно отображаться подобно баннеру Message of the day (MOTD). Баннеры MOTD являются статическими данными.

Вот код.

#!/bin/bash
echo
echo Your aliases:
echo \(from ~/.bashrc\)
echo
cat .bashrc | egrep 'alias.+\=' | tr -s [:space:] | sed 's_^ alias_alias_' | sed 's_alias__' | sort | sed 's_=_\t\t_' | sed 's_^ __'

Он работает, если я добавляю ./als к моему файлу ~/.profile , но это выполняется только для меня. Опять же, мне бы хотелось, чтобы это запускалось для всех пользователей при входе в оболочку

    
задан user38537 11.11.2014 в 00:41
источник

1 ответ

5

Вы можете сохранить свой скрипт в /etc/profile.d/als.sh . В соответствии с инструкцией Ubuntu EnvironmentVariables :

  

Файлы с расширением .sh в каталоге /etc/profile.d   выполняются всякий раз, когда вводится оболочка входа bash (например, при входе в систему   с консоли или поверх ssh), а также с помощью DisplayManager, когда   загрузка рабочего стола.

Вы также должны изменить относительный путь с абсолютным путем:

 cat /home/$USER/.bashrc | egrep 'alias.+\=' | tr -s [:space:] | sed 's_^ alias_alias_' | sed 's_alias__' | sort | sed 's_=_\t\t_' | sed 's_^ __'  

И это должно работать для всех пользователей.     

ответ дан Lety 11.11.2014 в 00:55
источник