![Cygwin 中可以使用“chsh”命令吗?](https://linux22.com/image/1287998/Cygwin%20%E4%B8%AD%E5%8F%AF%E4%BB%A5%E4%BD%BF%E7%94%A8%E2%80%9Cchsh%E2%80%9D%E5%91%BD%E4%BB%A4%E5%90%97%EF%BC%9F.png)
/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
无论如何都可以直接编辑。