在机器上给同事开了一个账号,结果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如何指定

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

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

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

 sudo usermod -s 用户名 shell类型

 

相关文章:

  • 2021-10-12
  • 2022-12-23
  • 2021-05-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-25
  • 2021-12-02
  • 2022-01-05
猜你喜欢
  • 2022-12-23
  • 2022-02-10
  • 2021-11-28
  • 2022-12-23
  • 2021-06-23
  • 2021-07-17
  • 2021-09-10
相关资源
相似解决方案