chsh
이 명령이 설치된 쉘 간에 사용자의 로그인 쉘을 전환하는 데 사용된다는 것을 알고 있지만 작동합니다.에도 불구하고로그인 소스(tty1, tty2, ssh,...). 내가 달성하고 싶은 것은 csh
tty7에서 로그인하고 bash
다른 모든 로그인 소스에 로그인하는 것입니다.
이것이 가능합니까?
답변1
다신 안 돼.
아니요, 로그인 쉘은 사용자가 로그인한 TTY가 아니라 사용자에게 바인딩됩니다. 사용자는 하나의 특정 로그인 셸만 가질 수 있습니다.
예, 사용자는 모든 조건에 따라 로그인 쉘의 초기화 파일에서 다른 프로그램이나 유틸리티를 시작할 수 있습니다.
예를 들어, bash
현재 셸에 로그인한 사용자는 가상 터미널 7에 로그인했을 때 실행할 파일에 다음과 같은 내용을 추가할 수 있습니다 .bash_profile
.csh
case $(tty) in
*/tty7) exec csh -l ;;
esac
exec csh -l
현재 쉘을 으로 대체하고 csh
로그인 쉘로 시작합니다.