ubuntu中用户使用的shell如何指定


  在机器上给同事开了一个账号,结果ssh登陆后,补全,高亮都没有,但是我自己的账号都可以.首先怀疑是.bashrc文件设置有问题,对比2个用户目录的这个文件并未发现可以的地方.搜索得知可能是所使用的shell不同,因为补全一般是通过一个与之对应的补全脚本或者内置补全功能,所有推断2个用户使用的shell不同,于是在2个用户下分别 echo $SHELL,果不其然,一个是/bin/bash,一个是/bin/sh,而sh又是一个符号链接,指向/bin/dash,ubuntu默认采用的是dash,一般通过/bin/sh的符号链接来指向,如果要切换它指向bash,执行:

sudo dpkg-reconfigure dash

选择是,否即可切换ubuntu默认shell,但是这样一来就影响了其他用户,能否针对于不同的用户单独指定其使用的shell呢?打开/etc/passwd文件:

用户对应的最后一个字段就指定了用户登陆时使用的shell类型,如果不指定,那么就使用默认的/bin/sh.如何修改这个设置呢?

 sudo usermod -s 用户名 shell类型

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM