관리자 권한 없이 쉘을 bash에서 ksh로 영구적으로 변경

관리자 권한 없이 쉘을 bash에서 ksh로 영구적으로 변경

bashPuTTY 쉘을 영구 쉘로 변경해야 합니다 ksh. 관리자 권한이 없기 때문에 chsh명령어 사용 및 편집이 불가능합니다./etc/passwd

앞으로 나아갈 수 있도록 파일에서 무엇을 변경해야 하는지 또는 / 파일 .profile에서 무언가를 변경해야 하는지 이해하도록 도와주세요 ..bashrc.kshrcksh

답변1

(댓글에 따르면...) 관리자가 exec ksh파일에 추가하라고 지시했지만 ~/.profile 그게 효과가 없는 것 같습니다. 전자가 존재하면 bash로그인 쉘이 그 자리를 차지하기 때문에 작동하지 않습니다 ~/.bash_profile.~/.profile

그러니 파일에 추가 exec ksh해주세요 ~/.bash_profile.

개인적으로 나는 다음과 같은 것을 사용할 것입니다( ksh셸 실행 파일이 있는 것으로 알려져 있다고 가정 /bin/ksh).

if [ -x /bin/ksh ]; then
    export SHELL=/bin/ksh
    exec "$SHELL" -l
fi

이것은 내 파일 전체가 될 것이며, 파일이 존재하고 실행 가능하다면 로그인 셸로 실행됩니다 ~/.bash_profile. 그런 /bin/ksh다음 /bin/ksh쉘은 kshbash교체를 진행하고 ~/.profile파일 등을 읽습니다.제거하다 exec ksh~/.profile거기에 추가한 경우 ). 귀하의 ~/.bashrc파일은 더 이상 사용되지 않습니다.

bash어떤 이유로 ksh시스템에서 쉘이 제거 되면 위의 코드는 쉘을 남깁니다.

관련 정보