Зольный профиль / файл конфигурации


26

Я ищу способ настроить сеансы Ash с моими собственными наборами aliases и whatnots. Каков Эш-эквивалент bashrcфайлов Баша ?

Ответы:


21

Сначала Эш читает следующие файлы (если они существуют):

  • система: /etc/profile
  • Пользователь: ~/.profile

8
При условии, что он запускается как оболочка входа в систему, которая не используется по умолчанию (например, в Alpine Linux / Docker)
Jakub Holý

2
@ JakubHolý Вы нашли способ запустить скрипт профиля для не входящей в систему оболочки?
Дэвид Лукач

@DavidLukac - см. Мой другой ответ здесь для оболочек без входа в систему.
Спечтер

8

Оболочка без входа в систему также будет считывать файл, если он указан в переменной среды ENV.

Поэтому, если вы установите это каким-либо образом (может быть, в вашем ~ / .profile или в каком-то другом «всеобъемлющем» элементе управления средой), то все будущие разветвленные оболочки будут запускать этот скрипт. Очень удобно для случаев без входа в систему.

Трудно найти документацию по этому вопросу, но подтверждается, что она работает на busybox-w32 (работает в Windows). На самом деле, трудно найти хорошую документацию по набору функций золы вообще.

ОБНОВЛЕНИЕ: Есть ряд вариантов пепла в дикой природе. «ENV» может не работать со всеми из них. Здесь есть некоторая информация о вариантах: https://www.in-ulm.de/~mascheck/various/ash/

Там есть предположение, что некоторые варианты золы могут использовать «SHINIT» вместо ENV.


Не работает для меня под Alpine 3.7.
вязать

Ясень @knite Busybox (используемый Alpine) использует ENV .
kirbyfan64sos

Должна ли переменная ENV или SHINIT просто быть установлена ​​или иметь определенное значение? Я пытаюсь заставить докер читать .profile в /root/.profile без явного начала с / bin / sh -l
Леон

@Leon - ENV (или, возможно, SHINIT) должен содержать полный путь к файлу для загрузки / источника. Но это только для запуска вариантов оболочки «ясень», а не обычных оболочек sh или bash.
Спечтер
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.