La respuesta de jordanm es incorrecta. /etc/profile
No se obtiene de todos los depósitos. Como usted señala, no se obtiene mediante csh
, tcsh
- No estoy seguro acerca de zsh
. Se obtiene de los sh
derivados de Bourne shell ( ), como Korn Shell ( ksh
) y BASH ( bash
). csh
usos /etc/login
. Las personas que tienden a usar exclusivamente derivados de Shell Borne tienden a olvidar que existen otros shells. Añaden algo a /etc/profile
esperar que se aplique a "todos los usuarios" y luego se sorprenden cuando el usuario extraño de C Shell (y somos un lote extraño) no tiene las cosas en las que se configuró /etc/profile
.
Aun así, las personas tienden a olvidarse de que existen otros shells derivados de Borne Shell. Si usan bash
o ksh
, se sienten libres de agregar una sintaxis /etc/profile
que no es válida en Bourne Shell, como por ejemplo definir una variable y exportarla en la misma línea. Luego obtienes un script que lo hace #!/bin/sh
y se ahoga en la sintaxis. /etc/profile
debería ajustarse a la sintaxis compatible con Bourne Shell.
Del mismo modo, debe cumplirlo por su cuenta .profile
(use .bash_profile
si desea una sintaxis bash): puede ser un poco más de mecanografía, pero es una mecanografía adicional que hace todo una vez. Referencia ${HOME}
y no ~
, etc. Algunos tipos de Unix, trabajos cron se ejecutan sh
, cada línea suya Makefile
es procesada sh
, por lo que si está trabajando en varios tipos de UNIX, realmente vale la pena mantener su .profile
shell Bourne compatible. Como SysAdmin, no puedo decirte cuántas veces he ayudado a alguien arreglando su .profile
compatibilidad con Bourne Shell.
En Linux, /bin/sh
es un enlace /bin/bash
y, cuando lo ejecuta, se ve la ruta que se utilizó para ejecutarlo y (en teoría) se limita solo a las cosas que admite Bourne Shell. Del mismo modo, vi
en Linux realmente se vim
limita de nuevo. De vez en cuando ves características "desangrarse". De vez en cuando vim
finge ser vi
va a hacer algo que vim
admite que vi
no porque los autores de vim
olvidó de desactivar esta en modo "compatibilidad hacia atrás vi". No me sorprendería si bash
pretender ser sh
tiene algunas características similares de "desangrado". No se sorprendería si alguna característica "funciona en Borne Shell en Linux", pero no en un sistema V o UNIX basado en BSD (AIX, OpenBSD, etc.).
Does it have positive ... and understood.
Qué estás tratando de decir aquí ? Entendí todo lo que no sea ese párrafo.