Fish Shell에서 기본 우분투 motd 가져오기

Fish Shell에서 기본 우분투 motd 가져오기

Fish Shell에 Ubuntu MOTD를 설치하고 싶습니다.

우분투의 기본값은 다음과 같습니다:

기본 우분투 MOTD

이것은 기본적으로 터미널(로드되는 터미네이터)을 열 때 볼 것으로 예상되는 것입니다.물고기 물고기) 내가 아는 한 (정보에 따르면)여기), 기본 쉘은 pam_motd를 실행하고 pam_motd는 차례로 /etc/update-motd.d에 있는 여러 스크립트를 실행합니다.

나는 물고기 껍질에서 이것을 자신있게 수행하는 방법을 모르겠습니다. 검색해봐도 정보가 없네요.

건배

답변1

이것을 당신의 ~/.config/fish/config.fish:

function fish_greeting
  status --is-login
  if [ $status != 0 ] 
    cat /run/motd.dynamic
  end 
end

이렇게 하면 원격으로 로그인할 때 이중 mod를 받지 않게 됩니다.

답변2

언급한 모든 실행은 시작 시 발생하며 구성 파일에 파일을 생성합니다 /etc/motd . cat /etc/motd다음에 추가

cat /etc/motd

파일로~/.config/fish/config.fish

/B2S

답변3

fishshell 문서에서:

초기화 후 fish_greeting이라는 함수가 존재하면 대화형 모드 진입 시 실행됩니다. 그렇지 않으면 fish_greeting이라는 환경 변수가 있으면 인쇄됩니다.

이는 fish_greeting을 설정할 때 기본 도움말 텍스트를 재정의합니다.

적절하게 설정된 Ubuntu 시스템에서 오늘의 메시지는 /etc/update-motd.d의 일련의 스크립트를 통해 생성되고 /run/motd에 캐시됩니다. 따라서 다음을 추가할 수 있습니다 ~/.config/fish/config.fish.

function fish_greeting
    cat /run/motd
end

답변4

Debian-based예를 들어 Ubuntuhas 는 /etc/issue\n \l 과 같은 이스케이프 코드 세트일 수 있으며, 다른 코드에서 로그인을 시도하면 /etc/issue의 내용을 볼 수 있습니다 tty. 물론 이것은 가능하다면 MOTD 시스템을 사용하지 않는 경우입니다.

관련 정보