X искажает быстрые переменные среды?

Я подозреваю, что вы используете SystemD. Если это правда, используйте его встроенный инструмент SystemCTL :

systemctl suspend
systemctl hibernate
systemctl hybrid-sleep
systemctl reboot
systemctl poweroff
systemctl halt

Как всегда вы можете создать псевдоним для любых из этих команд.

1
01.03.2015, 02:44
2 ответа

Нет, X не управляет переменными окружения. А вот bash - да, в частности, в неинтерактивных оболочках PS1 и PS2:

$ PS1='my PS1' PS2='my PS2' PS3='my PS3' PS4='my PS4' bash -c export |grep PS
declare -x PS3="my PS3"
declare -x PS4="my PS4"

Bash, вероятно, выполняется где-то в рамках Вашей последовательности входа в систему. Это гарантировано, если Ваш /bin/sh является bash и обычным, даже если это не так.

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

1
28.01.2020, 01:45

Я предполагаю, что вы используете bash в качестве оболочки. Если вы работаете с чем-то другим, особенности будут отличаться, но подход останется прежним. Чтобы подтвердить свой логин, выполните следующую команду: getent passwd "$ {USER: - $ (id -nu)}" | awk -F: '{print $ NF}'

Я подозреваю, что ваше приглашение определено в .profile или .bash_profile и устанавливается (один раз) при входе в систему ваш терминал. Когда вы вызываете startx и открываете терминал, он «знает», что это не сеанс входа в систему, поэтому вместо этого вызывает .bashrc .

Вы можете подтвердить это с помощью следующей команды, результат которой вы можете указать в своем Вопросе: grep '\ 2

Как добавить все двоичные файлы для избиения заполнения клавишей Tab за некоторую команду? 13.02.2014
Я установил струйку программы, которые позволяют регулировать сеть для указанной команды как:-u10-d10 струйки <КОМАНДА>, Как добавить завершение удара для всех двоичных файлов для сочений команды?
  • 5
    Как обрабатывать асинхронный выход из подоболочки 27.06.2019
    Скажем, у меня есть это: set -e; ( docker stop notifier-server docker rm -f notifier-server exit 1 # явный выход с ненулевым значением ) & ждать; echo 'мы здесь и сейчас' всегда ли мы доберемся до ...
  • 20
    Bash - последовательность чисел в одной строке 26.07.2015
    Я знаю команду seq для генерации последовательности целых чисел, по одному в строке, но я хотел бы задать два вопроса: можно ли записать числа последовательности в в той же строке? Возможно ли ...
  • 3
    Выполнение действий со списком от оболочки 30.07.2011
    У меня есть список пакетов, которые я хочу деинсталлировать. deinstaller программа pkg_deinstall не берет список пакетов как параметр для деинсталляции. Как я деинсталлировал бы из списка (как цикл foreach)...
  • 3
    Mac OS X: терминальное быстрое имя пользователя 18.09.2013
    Я использую Snow Leopard Mac OS (v10.6.8). Я изменил имя учетной записи под Установками системы> Система> Учетные записи> Полное имя. Однако это не изменяет имя пользователя на терминале...
  • 2
    Как иметь сервис, который удостоверяется, что программа продолжает бежать? 08.09.2014
    Я сделал сервис названным thin_keep_alive_service в/etc/init.d. Я дал ему chmod +x права. Сценарий смотрит следующим образом: #!/bin/bash ### НАЧИНАЮТСЯ, ИНФОРМАЦИЯ INIT # Обеспечивает: thin_keep_alive_service #...
  • 25
    Получите свободное пространство, доступное в текущем каталоге в Bash 18.01.2011
    Я знаю df-h и pwd, но это кажется небольшим комплексом для regex соответствие части. Какие-либо идеи?