직장에서는 개인 계정이 있지만 컴퓨터 계정으로 실행되는 프로그램을 개발 중입니다. "머신 계정"이란 사람과 연결되어 있지 않다는 의미입니다. 특별한 시스템 관리자 역할은 없지만 일괄 작업을 실행합니다. 이 계정은 한동안 사용되어 왔으며 아마도 다양한 작업을 수행했을 것입니다.
개발 중에는 대부분의 작업이 이 계정에서 수행되므로 "alias e=emacs -nw"와 같은 몇 가지 별칭을 설정하고 싶습니다.
하지만 이를 추가하기 위해 .profile-user를 편집하면 상황이 엉망이 될 수 있다는 점이 걱정됩니다. e가 사용하는 다른 명령의 이름이기도 하고 내가 해당 명령을 재정의하면 어떻게 되나요?
그렇다면 어떻게 하면 안전하게 할 수 있을까요? 원하는 별칭을 하나씩 시도해보고 "명령을 찾을 수 없음"이 표시되는지 확인하여 충돌이 없는지 확인할 수 있습니다. 그러나 문자열이 명령이 될 수 있는 경우(예: 컴퓨터 계정에 특정 디렉터리로 CD를 가져온 다음 내 것과 이름이 같은 파일을 실행하는 프로그램이 있는 경우) 별칭이 있는 경우에는 충돌이 해결되지 않는 것 같습니다. ).
누군가가 이전에 이에 대해 생각해 본 적이 있고 이를 해결하는 좋은 방법을 알고 있는지 또는 이 계정에 별칭을 도입해서는 안 된다고 생각하는지 궁금합니다.
답변1
"컴퓨터 계정"은 일반적으로 대화형으로 사용되지 않지만 다양한 서비스를 실행하는 계정이라고 가정합니다.
파일은 로그인 셸에서만 읽을 수 있으므로 계정에 별칭을 추가하는 것은 .profile
안전합니다.
또한 하위 프로세스는 별칭을 상속하지 않으므로 계정에 로그인하고 명령줄에서 스크립트나 프로그램을 실행하면 명시적으로 파일을 직접 또는 간접적으로 .profile
얻지 않는 한 파일의 별칭은 해당 스크립트나 프로그램에 대해 정의되지 않습니다. .profile
(이렇게 하면 안 됩니다).