安装完毕系统后,solaris的默认shell是sh,即命令行提示符为(本文中所讲的都是root用户,其他权限的用户也是同样的方法):#
而在用linuxcmd/ target=_blank class=infotextkey>linux命令行的提示符中既有用户名,还有主机名称以及当前路径的名称。这样可以给人一目了然的感觉。不过linux下一般默认shell是bash,而不是sh。如果只想在当前的使用中切换shell的话,方法很简单,可以在命令行中输入:
如果需要永久性的改变默认的shell,则需要修改/etc/passwd文件。
打开passwd,第一行记录的是root用户的相关信息,该行内容为:
root:x:0:0:super-user:/:/sbin/sh
其中,最后一个冒号后面即为root用户的默认shell,将其修改为bash的路径:
root:x:0:0:super-user:/:/usr/bin/bash
保存文件passwd,退出。
这样,就可以实现用tab键补全命令行的输入和上下箭头实现输入命令的历史回放,而sh却没有这样的功能。
但是,仅仅这一点修改,并不能实现命令行提示符中出现象linux提示符中既有用户名,又有主机名和当前路径名。
需要另外编辑文件。
即在$home下新建文件.profile,如果文件存在的话就在里面添加内容。由于是root用户,所以$home的路径为根目录/。
在根目录下新建文件.profile,并在其中添加如下内容:
ps1='[u@h:$pwd]#'
export ps1
保存退出该文件,并重启系统。进入系统后,打开一个终端,则命令行提示符为:
[root@solaris:/]#
执行命令:
执行命令:
则命令行变为:
其中,root是指用户名,solaris是主机名,/home为当前路径。
当然,如果习惯使用csh,可以先将shell切换至csh。然后可以输入命令:
#set filec
这样,可以在csh下实现命令行补全。不过,补全输入使用的不是tab键,而是esc键。
sh是bourne shell, bash是bourne again shell
bash的功能强大得多,拥有一些bourne shell没有的csh和ksh的特性。