![$LOGNAME을 기반으로 하는 기본 환경 스크립트는 모든 셸 호출에서 실행될 수 있습니다.](https://linux55.com/image/93132/%24LOGNAME%EC%9D%84%20%EA%B8%B0%EB%B0%98%EC%9C%BC%EB%A1%9C%20%ED%95%98%EB%8A%94%20%EA%B8%B0%EB%B3%B8%20%ED%99%98%EA%B2%BD%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EB%8A%94%20%EB%AA%A8%EB%93%A0%20%EC%85%B8%20%ED%98%B8%EC%B6%9C%EC%97%90%EC%84%9C%20%EC%8B%A4%ED%96%89%EB%90%A0%20%EC%88%98%20%EC%9E%88%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
다양한 Linux(및 Solaris) 서버로 작업할 때 사용자의 90%가 동일한 환경 변수를 필요로 하며 일부 세부 사항은 개별 사용자에게 고유하다는 사실을 발견했습니다.
내 목표는 각 사용자마다 하나씩 생성할 필요를 없애는 것입니다 .profile
.생각하다항목의 90%를 실행하고 값을 통해 세부 정보의 10%를 지정하는 기본(환경) 스크립트를 작성/실행하여 적절한 환경을 확보하세요 $LOGNAME
.
내 진짜 질문은 이 기본 스크립트를 실행하려면 어떻게 해야 하느냐는 것입니다.모든 쉘 호출
- 대부분의 경우 로그인 셸이 사용
bash
되지만 그것도 있었으면 좋겠습니다sh
. - 모든 서브쉘
- 비대화형 쉘
ssh
,예,호스트에서 원격으로 로그인하고 싶습니다.ㅏ잡고 있다두번째, 내 환경이 로드된 것에 만족합니다!sudo su - user
, 임의의 사용자에게 sudo를 실행하면 이 기본 환경 스크립트가 실행되어야 합니다.cron
at
batch
- 내가 무엇을 놓치고 있나요? 나는 단지 이 기본 환경 스크립트가 쉘을 호출하는 방식으로 실행되기를 원합니다.
나는 $BASH_ENV
결코 없다수동, 그러나 이는 다음에는 적용되지 않습니다.ssh