HISTTIMEFORMAT이 수정되었습니다. /etc/bash.rc 또는 /etc/profile에서? [복사]

HISTTIMEFORMAT이 수정되었습니다. /etc/bash.rc 또는 /etc/profile에서? [복사]

historyCentOS/RHEL 6에서 명령 출력 에 날짜/시간을 추가하고 싶습니다 . 기본적으로 컴퓨터의 모든 사용자에게 이것이 적용되기를 원합니다. 이것 자체는 쉽습니다. 다음을 추가하면 될 것 같습니다.

export HISTTIMEFORMAT="%Y%m%d %T  "

어디에 추가해야 하나요? 에 추가할지 여부에 대해 일부 /etc/profile상충되는 정보를 보았습니다 /etc/bashrc. 나는 둘 다 똑같이 효과적일 것이라고 믿습니다.

특정 수정을 위해 어떤 파일을 사용해야 하는지에 대한 제안이 있는 사람이 있나요?

답변1

이 문자열을 포함하는 파일을 생성하여 이 디렉토리에 추가하겠습니다 /etc/profiled.d. 파일 custom_histformat.sh또는 이와 유사한 것을 호출합니다.

일반적으로 이러한 파일( /etc/profile또는 )은 시스템 소유이므로 /etc/bashrc해당 파일에 사용자 정의를 추가하고 싶지 않습니다. 사용자 정의가 이 /etc/profile.d디렉토리에 들어갈 수 있습니다.

업데이트 #1

죽은 말을 이길 위험이 있지만 사람들이 /etc/profile.d질문에 언급된 디렉토리를 사용하는 이유를 강조하는 것이 중요하다고 생각합니다.@길스 답변.

RHCE에 대한 테스트를 살펴보면 이곳이 /etc/profile.d이러한 유형의 변경을 수행하기에 적합한 장소임을 지적합니다. 따라서 시험을 볼 때 /etc/bashrc또는 또는 이외의 다른 질문에 답했다면 /etc/profile틀린 것입니다. 이를 RHism이라고 부르는데 이것이 바로 Red Hat 기반 배포판이 수행하는 작업입니다. 다른 배포판에는 다른 방법이 있습니다.

답변2

모든 사용자에 대해 정의된 환경 변수는 /etc/profile또는 에 속합니다 /etc/environment. 계정에 대해 정의된 환경 변수가 있는 경우 이는 ~/.environment또는 에 속합니다 ~/.profile.

HISTTIMEFORMAT환경에서 설정하면 작동하지만 쉘마다 다르게 해석할 수 있으므로 작동해서는 안 됩니다. (그러나 나는 이것이 이 특정 변수에 대한 문제라고 생각하지 않습니다.) bash의 초기화 파일에서 설정해야 합니다: ~/.bashrc. 일부 설치에는 시스템 전체의 bash init 파일(예: )이 있지만 /etc/bashrc이는 사용자 기본 설정이므로 사용해서는 안 됩니다.

그래서 HISTTIMEFORMAT="%Y%m%d %T "그것을 넣으십시오 ~/.bashrc.

이러한 파일 간의 차이점은 다음을 참조하세요. 모든 쉘이 읽을 수 있는 ".bashrc"에 해당하는 파일이 있습니까?

관련 정보