为了实现普通用户tab命令补全,在网上搜了一圈,没有找到解决方案。后来研究了一下,找到方法了。

#ee /etc/csh.cshrc

加下面两行:

set autolist    # Tab键命令补全

set nobeep  # 关闭蜂鸣器的声音


保存后重新登陆后,root账号就可以使用tab进行命令补全。但普通用户不行。为何?因为普通用户的shell是使用/bin/sh. 而root用户使用csh。所以要修改普通用户的shell设置。如何修改呢?

我一开始修改了/etc/master.passwd,没有效果。并且会导致下面操作失败。不要去修改master.passwd文件。

正确的修改方法:

ServerA# chsh -s /bin/csh swen         //swen是用户名

chsh: user information updated

使用普通用户账号swen登陆,提示变了,本来是$,现在变成%了。tab补全也可以了。

%ll /etc/s

security/     shells        snmpd.config  ssh/         sysctl.conf  

services      skel/         spwd.db       ssl/          syslog.conf  

%echo $SHELL

/bin/csh