/etc/pathsadalah bagian dari apa yang digunakan untuk mengatur $PATHproses shell. Ketika Anda membuka jendela Terminal baru, itu dimulai bash, yang menjalankan beberapa skrip startup: /etc/profileDAN ~/.bash_profileATAU (jika itu tidak ada) ~/.bash_loginATAU (jika itu tidak ada juga) ~/.profile. Script ini mengatur lingkungan shell, termasuk $PATH.
Salah satu hal yang /etc/profiledilakukan adalah menjalankan /usr/libexec/path_helper, yang membaca /etc/pathsdan semua file masuk /etc/paths.d, dan menambahkan isinya $PATH. Tetapi ini hanyalah titik awal; skrip startup Anda sendiri (jika ada) dapat ditambahkan ke $PATH, edit, ganti sepenuhnya, dll.
Bagi saya sepertinya skrip startup Anda (dan / atau hal-hal yang dijalankannya) menambahkan sejumlah entri ke set dasar yang didapatnya /etc/paths. "Users / myusername / .node_modules_global / bin: /Users/mac/.node_modules_global/bin:" ditambahkan ke awal $PATH(artinya direktori tersebut akan dicari terlebih dahulu), dan ": / Users / mac / Library / Android / sdk / platform-tools: / platform-tools "ditambahkan di bagian akhir. Jika Anda ingin tahu persis apa yang menambahkannya, Anda perlu melihat skrip startup Anda.
BTW, proses pengaturan ini $PATHhanya berlaku untuk bash "login" shells. Apa pun yang dijalankan oleh bash shell akan mewarisi $PATHdarinya, jadi mungkin pada dasarnya memiliki hal yang sama. bash shell non-login mengikuti proses pengaturan yang agak berbeda. Kerang lain, dan hal-hal yang tidak dimulai dari shell sama sekali (mis. Pekerjaan cron) mungkin sama sekali berbeda $PATHs.
/etc/paths, tetapi saya berlari10.4.11dan hal-hal mungkin telah berubah sejak saat itu