Cygwin 中可以使用“chsh”命令吗?

Cygwin 中可以使用“chsh”命令吗?

/etc/bash_completion.d 中有一个“chsh”文件。当我在目录 /etc/bash_completion.d 中输入“./chsh”时,什么也没发生。为什么?

如果 Cygwin 中禁用了“chsh”实用程序,有什么方法可以将其打开?如果禁用了它,是否意味着 Cygwin 中 /etc/bash_completion.d 中的所有实用程序都已禁用?

更新:似乎“chsh”实用程序不在任何 Cygwin 包中。对吗?

答案1

中的文件/etc/bash_completion.d是命令行完成函数库。它不是命令chsh

答案2

回答得很好 http://cygwin.com/ml/cygwin-xfree/2010-02/msg00057.html

您需要编辑 /etc/passwd(使用文本编辑器),将行中最后一个字段更改为您的用户 ID 为 /bin/tcsh

答案3

我怀疑 chsh 不可用的原因是 Cygwin 没有设置用户标识/etc/passwd允许可执行文件以其所有者的权限运行的功能。当由受限用户运行时,需要此功能来允许 chsh 更改 shell 条目。管理员/etc/passwd无论如何都可以直接编辑。

相关内容