Измените / etc / xdg / lxsession / LXDE / автозапуск перед загрузкой

У меня есть некоторые параметры, которые я хотел бы изменить в /etc/xdg/lxsession/LXDE/autostart , прежде чем он будет запущен. Я получаю параметры из команды grep. Я хотел бы подать их в файл autostart но не знаю, как это сделать.

В настоящее время у меня есть grep "stuff" /file/one который выводит 1234.

Я хочу поставить 1234 в файл autostart например

 .... @program 1234 .... 

One Solution collect form web for “Измените / etc / xdg / lxsession / LXDE / автозапуск перед загрузкой”

Как всегда, существует, вероятно, миллион способов сделать это, и как я прочитал ваш вопрос, что вы делаете свою проблему неправильно, но сначала сначала.

После правильного ввода имени пользователя и пароля все скрипты в /etc/X11/Xsession.d находятся в алфавитном порядке (не запускаются, это очень важная разница!). Поэтому, если вы хотите, чтобы какая-то логика произошла после входа в систему, но перед запуском среды вашего рабочего стола это место для размещения ваших скриптов.

В таком скрипте вы можете поставить

 for item in $(grep "stuff" /file/one) do echo "@program ${item}" >> /etc/xdg/lxsession/LXDE/autostart done 

Это добавит строки, которые вы хотите записать, к которым вы хотите добавить. Это '>>', который заставляет оболочку добавлять строки в конец файла, а не заменять файл. Это ответ на ваш вопрос.

Теперь вот проблема: с таким скриптом результат вашего grep будет добавлен в файл автозапуска каждый раз, когда вы входите на свой компьютер. Поэтому в первый раз эта программа будет запускаться один раз. При следующем входе в систему дважды и три раза при следующем входе в систему. Список ваших программ автозапуска будет продолжать расти, пока ваш grep даст результаты для добавления в файл автозапуска. Вот почему я изначально сказал, что вы делаете неправильную ошибку.

Кроме того, существует не только глобальный /etc/xdg/lxsession/LXDE/autostart . Вы можете иметь файл ~/.config/lxsession/LXDE/autostart для каждого отдельного пользователя. Даже если вы единственный пользователь, работающий на вашем компьютере, вы должны отредактировать файл в своем домашнем каталоге ( ~ расширяется до вашего домашнего каталога), чем глобальный.

И как окончательный совет, если вы хотите запускать программы, просто добавьте запись в свой ~/.config/lxsession/LXDE/autostart для сценария оболочки, который выполняет цикл for, как указано выше, но вместо добавления строк в какой-либо файл вы фактически выполните команды. Когда вы запускаете команды с символом & в конце строки, эти программы будут выполняться в фоновом режиме, и сценарий не будет блокироваться.

  • Курсор TTY перемещается в неправильное положение во время входа в систему
  • Помимо crontab, какие другие способы можно добавить программы для запуска во время загрузки?
  • Проблема с запуском службы Debian
  • Как переключиться с CLI на GUI Ubuntu
  • Как написать сценарий запуска pre-mount?
  • Остановить процесс от запуска при запуске без его удаления
  • Запустить скрипт при запуске для ядра Old Linux (3.0.0)
  • Запустить скрипт при загрузке?
  • Почему мой сценарий не ожидает запуска сетевого сервиса перед запуском?
  • Автоматически проверять `fsck`
  • Не удается загрузить из-за отсутствия внешнего диска
  • Как запустить приложение gui framebuffer (no X) при запуске вместо приглашения на вход в консоль?
  • Linux и Unix - лучшая ОС в мире.