Użyj `/ etc / paths` lub` / etc / paths.d`, aby dodać elementy do ŚCIEŻKI w macOS Sierra?

10

Z tego, co zebrałem w różnych miejscach podczas dyskusji na temat /usr/libexec/path_helperwszystkich, najwyraźniej współczesnym sposobem dodawania elementów do zmiennej środowiskowej PATHw systemie macOS Sierra 10.12 jest:

  • Edytuj /etc/pathsplik
  • Dodaj plik (i) do odczytu z /etc/paths.dkatalogu.

Moje pytania:

  • Który koszerny jest bardziej współczesny macOS?
  • Jeśli lepszym lub bardziej powszechnym sposobem jest upuszczanie plików do paths.dkatalogu, jakie powinny być nazwy i zawartość tych plików? Jakieś przykłady?
  • Używam zshraczej niż bash. Czy to robi różnicę?
  • Czy te dwie opcje są unikalne w systemie macOS? Czy pojawiają się w BSD lub innych systemach uniksopodobnych?
Basil Bourque
źródło

Odpowiedzi:

10

Zastosowanie /etc/paths.d. Głównym powodem jest to, że /etc/pathszostaną zmodyfikowane i / lub zastąpione aktualizacjami systemu. /etc/paths.d/przedmioty nie będą. Pliki są ogólnie nazywane wzorcem index-source. Np 99-mypaths. Ścieżki są dodawane w kolejności *. O wiele łatwiej jest po prostu dodać / usunąć plik niż programowo edytować go idempotentnie bez błędów.

Domyślnie csh.login, profilei zprofilena macOS wszystkie ładują path_helper.


* Prawdopodobnie zamówienie ASCII, ale może zamówienie LOCALE.

bahamat
źródło