如何让Linux终端默认的shell就是csh?
which csh 找到csh所存放路径
成都创新互联于2013年开始,是专业互联网技术服务公司,拥有项目成都网站建设、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元华州做网站,已为上家服务,为华州各地企业和个人服务,联系电话:18982081108
chsh 变更SHELL
输入SHELL路径即可
或者简写为:
chsh -s /bin/csh
退出以后重登陆将会更改默认SHELL
Red Hat Linux中bsh,csh都是符号链接,bsh指向ash,csh指向tcsh,sh指向bash
临时更换SHELL:
ash ;执行ash,进入Small Bourne Shell ,exit退出
ksh ;执行ksh,进入Korn Shell ,exit退出
tcsh ;执行tcsh,进入Enhanced C Shell ,exit退出
zsh ;执行zsh ,进入Enhanced Bourne Shell ,exit退出
临时更换shell环境,重登陆将换回默认SHELL
linux中没有csh文件
没安装。
在官方标准源里面有csh安装包。
为什么要将默认bash修改为csh,有时候安装的软件命令是基于csh写的,如果用bash使用软件就会报错,如:“Nocommand‘setenv’found”,此时需要将Ubuntu默认的bash改为csh。
Linux系统环境变量加载过程
Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登录到系统的用户都要读取的系统变量,而用户级的环境变量则是该用户使用系统时加载的环境变量(在用户主目录下$HOME/)。
使用默认Bash时,用户登录后加载环境变量的流程如下:
说明:
bash首先执行/etc/profile脚本,/etc/profile脚本先依次执行/etc/profile.d/*.sh,随后bash会执行用户主目录下的.bash_profile脚本,.bash_profile脚本会执行用户主目录下的.bashrc脚本,而.bashrc脚本会执行/etc/bashrc脚本至此,所有的环境变量和初始化设定都已经加载完成。bash随后调用terminfo和inputrc,完成终端属性和键盘映射的设定。
(1)/etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置。
(2)/etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。
(3)~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。
(4)~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。
(5) ~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承 /etc/profile中的变量,他们是"父子"关系。
(6)~/.bash_profile 是交互式、login 方式进入 bash 运行的~/.bashrc 是交互式 non-login 方式进入 bash 运行的通常二者设置大致相同,所以通常前者会调用后者。
tcsh是一个加强的csh,目前大多数系统的csh都使用这个shell代替原来的csh,为csh提供命令补全和命令行编辑功能。/bin/csh实际上是/bin/tcsh的符号连接。这样一来,加载环境变量的流程如下:
在bash环境下怎样调用csh的脚本
把含有csh的语句的文件用csh执行, 把含有bash的语句的文件用bash执行
分享题目:linux命令csh,Linux命令解压
文章位置:http://scgulin.cn/article/hoecie.html