创建新用户,bash 提示不一致

创建新用户,bash 提示不一致

我创建了一个新的用户配置文件:

    useradd kitty
    passwd kitty
    mkdir kitty
    chmod 0700 kitty
    chown -R kitty:kitty
    adduser kitty sudo

    #when I did it I initially didn't notice I'm using two different commands,
    #hence the inconsequence, but as I've read up there are interchangeable anyway,
    #just listing it in case it actually makes any difference

我还在 kitty 的主文件夹中创建了一个 .bashrc 文件,其内容如下:

   export PS1='[\u@\h \w] '

最初,制表符补全不起作用,Kitty 的提示符是标准的 $ 符号,尽管我篡改了 /etc/profile /etc/bash.bashrc /etc/bash_completion 并在主目录中为我的主要用户和 Kitty 创建了 .bashrc,但我最终撤消了所有更改,只在 Kitty 的主目录中留下了 .bashrc 文件。所以我猜是重启解决了这些问题(原文如此)。

现在的问题是:当我在主配置文件的终端窗口中以 kitty 身份登录时,提示符会像我的主配置文件一样出现,并带有所有格式(颜色/粗体),但当我以 kitty 身份登录时,她的本机 bash 提示符具有标准格式。为什么?

编辑:正如我所注意到的,提示的内容也略有不同,我的主要个人资料上的提示内容后面跟着一个 $ 符号,而 kitty 的提示内容后面没有 $ 符号,而是用方括号括起来。

我在终端窗口中使用sudo login和在配置文件之间切换exit。当我在系统启动时以 kitty 身份登录时,终端会在彩色(以我的主要用户身份登录)和标准(kitty 的)配置文件之间切换。如果在系统启动时我以我的主要用户身份登录,它会以相同的方式为两者(kitty 和主要用户)着色。

答案1

看起来 kitty 的 shell 是/bin/sh。这是一个用于编写脚本的 shell,它不支持花哨的提示、完成、命令行编辑和其他交互功能。将 kitty 的 shell 更改为/bin/bash

chsh -s /bin/bash kitty

相关内容