Как Вы запускаете скрипт на входе в систему в *, отклоняют?

Не могли бы вы также сделать свойство частью родительских объектов?

$scope.$parent.property = somevalue;

Я не говорю, что это правильно, но оно работает.

68
задан Chris Upchurch 8 April 2009 в 19:09
поделиться

10 ответов

От Википедия Bash

, Когда Bash запускается, он выполняет команды во множестве различных сценариев.

, Когда Bash вызывается как интерактивная оболочка входа в систему, он сначала читает и выполняет команды из файла/etc/profile, если тот файл существует. После чтения того файла это ищет ~/.bash_profile, ~/.bash_login и ~/.profile, в том порядке, и читает и выполняет команды от первой, которая существует и читаема.

, Когда оболочка входа в систему выходит, Bash читает и выполняет команды из файла ~/.bash_logout, если это существует.

, Когда интерактивная оболочка, которая не является оболочкой входа в систему, запускается, Bash читает и выполняет команды от ~/.bashrc, если тот файл существует. Это может быть запрещено при помощи - norc опция. - rcfile опция файла вынудит Bash считать и выполнить команды из файла вместо ~/.bashrc.

111
ответ дан AlikElzin-kilaka 24 November 2019 в 14:08
поделиться

При входе в систему большинство оболочек выполняет сценарий входа в систему, который можно использовать для выполнения пользовательского сценария. Сценарий входа в систему, который выполняет оболочка, зависит, конечно, на оболочку:

  • удар: .bash_profile, .bash_login, .profile (для назад compabitibility)
  • шеннон: .profile
  • tcsh и csh: .login
  • zsh: .zshrc

можно, вероятно, узнать то, что окружает, Вы используете путем выполнения

echo $SHELL

от подсказки.

Для немного более широкого определения 'входа в систему', полезно знать, что на большинстве дистрибутивов, когда X запускается, Ваш .xsessionrc будет выполняться, когда Ваши X сессий будут запущены.

27
ответ дан pjz 24 November 2019 в 14:08
поделиться

Если Вы хотите работать один сценарий и [только 112] один сценарий, можно сделать его той пользовательской оболочкой значения по умолчанию.

echo "/usr/bin/uptime" >> /etc/shells
vim /etc/passwd  
  * username:x:uid:grp:message:homedir:/usr/bin/uptime

может иметь интересные эффекты:) (не защищают tho, не доверяйте ему слишком много. ничто как установка Вашей оболочки по умолчанию, чтобы быть сценарием, который вытирает Ваш диск.... хотя.. Я могу вообразить сценарий, где это могло быть удивительно полезно)

5
ответ дан Kent Fredric 24 November 2019 в 14:08
поделиться

При использовании Bash первый из ~/.bash_profile, ~/.bash_login и ~/.profile будет выполнен для интерактивной оболочки входа в систему. Я верю ~/.profile, обычно выполняется оболочками Unix помимо Bash. Bash будет работать ~/.bashrc за невходом в систему интерактивная оболочка.

я обычно поместил все, что я хочу всегда установить в .bashrc и затем выполнить его от .bash_profile, где я также настроил несколько вещей, которые должны работать только, когда я вхожу в систему, такие как установка ssh-agent или выполнение screen.

9
ответ дан Michael Johnson 24 November 2019 в 14:08
поделиться

Если Вы находитесь на OSX, то это ~/.profile

3
ответ дан jaypal singh 24 November 2019 в 14:08
поделиться

Поместите его в Ваш профиль удара :

~/.bash_profile
3
ответ дан jaypal singh 24 November 2019 в 14:08
поделиться

Launchd предпочтительный путь в OS X.

, Если Вы хотите, чтобы он работал на Вашем входе в систему, помещает его в ~/Library/LaunchAgents

, Запускаются launchd объект

launchctl load /Library/LaunchDaemons/com.bob.plist

объект Остановки

launchctl unload /Library/LaunchDaemons/com.bob.plist

Пример com.bob.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.bob</string>
<key>RunAtLoad</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/java</string>
<string>-jar</string>
<string>/Users/user/program.jar</string>
</array>
</dict>
</plist>
3
ответ дан Skynet 24 November 2019 в 14:08
поделиться

Добавьте запись в /etc/profile, который выполняет сценарий. Это будет выполнено во время каждого входа в систему. Если Вы только делаете это для своей собственной учетной записи, используйте один из своих сценариев входа в систему (например, .bash_profile) для выполнения ее.

2
ответ дан ConcernedOfTunbridgeWells 24 November 2019 в 14:08
поделиться

Ищите страницу справочника удара своей локальной системы ^INVOCATION для получения информации, на которой файл будет считанным при запуске.

man bash
/^INVOCATION

Также в разделе FILES,

   ~/.bash_profile
          The personal initialization file, executed for login shells
   ~/.bashrc
          The individual per-interactive-shell startup file

Добавляют Ваш сценарий к надлежащему файлу. Удостоверьтесь, что сценарий находится в $PATH, или используйте полный путь для файла сценария.

2
ответ дан jtimberman 24 November 2019 в 14:08
поделиться

Сценарий ~/.bash_profile выполняется на входе в систему.

1
ответ дан jaypal singh 24 November 2019 в 14:08
поделиться