创建新用户不包含 cmd 的功能?

创建新用户不包含 cmd 的功能?

我使用以下命令创建了一个新用户:

sudo useradd -m jkeesh
sudo passwd jkeesh

一切正常。我可以登录并执行其他操作。但在命令行中,我缺少真正的 Ubuntu 的功能和特性。我的意思是,当我尝试使用方向键移动到命令末尾时,我得到了以下信息:

^[[A^[[A^[[D^[[D^[[D^[[B^[[C

而且没有自动完成功能。按下tab按键也没用。

我哪里犯了错误?

我对 Ubuntu 还很陌生,需要一些帮助。

答案1

这是因为默认 shell 是bin/sh

你应该这样做。编辑/etc/passwd并检查包含用户名的行jkeesh。你会看到类似以下内容:

jkeesh:x:1005:1005::/home/jkeesh:/bin/sh

该行更改bin/shbin/bash

这应该可以解决你的问题。

答案2

你说你是 Ubuntu 新手,那么也许你最好使用系统设置 > 用户帐户来添加新用户。单击屏幕右上角的齿轮图标即可进入系统设置。

答案3

您使用命令创建了新用户useradd,该命令为新用户提供了默认的 sh shell。您可以这样使用它 - useradd -d /home/user -s /bin/bash -G group -m user(如果您不希望他属于特定组,请删除 -g)以获取 bash shell。

但是既然您已经创建了用户,我们需要将 shell 更改为 bash,然后您将拥有所需的所有功能。

在终端上,执行chsh。输入 sudo 密码,然后/bin/bash输入进入。这应该可以让你继续。我猜你需要重新启动系统。

编辑:adduser更喜欢实用性useradd

相关内容