CSH和BASH的区别
Linux是计算机爱好者中流行的操作系统。它是一个免费且开放的操作系统。Shell是我们用来控制操作系统的界面。Shell包括CSH和BASH。Shell充当程序员和设备之间通信的通道。我们发出命令并获得结果。
C-shell以C编程语法命名。它的众多优点之一是能够控制作业。可以通过脚本shell命令运行程序和交互式shell登录来访问它。有时它可能不容易使用。Bash是一款类似于CSH的shell软件。
Bourne shell被称为最基本的shell。Bash是Bourne Shell的再次实现。Brian Fox编写了Bash的代码。他结合了现有shell的一些缺点,并为Bash配备了独一无二的shell软件。它在计算机极客中广为人知。
阅读本文以了解更多关于CSH和BASH的信息以及它们彼此之间的区别。
什么是CSH?
CSH是C Shell的缩写。Bill Joy在20世纪80年代初在加州大学伯克利分校学习期间设计了CSH Unix和Linux shell。CSH是一个命令行解释器,允许用户在计算机上运行应用程序和指令。CSH还包含用于编写shell脚本的编程语言。CSH建立在Bourne shell(最初的Unix shell)之上。
CSH的设计目的是比Bourne shell更易于使用,并包含其他shell中没有的编程功能。较新的shell,如Bash和ZSH,已经超越了CSH。它仍然在喜欢其简单性和强大功能的开发人员中流行。
命令的框架以'%'提示符开头,以D结尾,后跟'%'提示符。字母D表示指令已结束。参数跟随命令。一个这样的关键概念是标志参数。它以'-'开头。如果指定了命令,它还会指定文件大小。
特殊字符经常被使用。它们在语义和语法上都描述了shell。我们可以检查由'/'分隔的文件名。每个部分都显示其在目录中的位置。我们可以使用引号'*'。命令可以被终止。变量对每个shell都是唯一的。
什么是BASH?
BASH是由Brian Fox在1980年开发的Linux和Unix shell。它在大多数Linux和Unix发行版中作为默认shell,开发人员和管理员主要依赖它。
BASH代表Bourne-Again Shell,它是Stephen Bourne最初的Unix shell(Bourne shell)的扩展。BASH具有Bourne shell不具备的许多功能,例如命令行编辑、历史替换和配置文件。BASH还支持变量、数组和函数。BASH脚本是可以用来自动执行任务的可执行文件。BASH对于创建复杂的程序或仅仅是自动化重复性任务非常有用。
Bash是Bourne shell的一个精心设计的扩展。它是目前最常用的shell。有一些默认命令,例如在终端中键入date来获取日期信息。如果你键入“cal”(calendar),你将获得日历信息作为输出。
“pwd”是打印工作目录的缩写。当你使用此命令时,你将获得关于你当前工作目录的信息。“ls”显示关于你当前正在处理的文件、邮件和文件夹的信息(列表存储是“ls”)。它使你可以访问你主目录中的数据。
CSH和BASH的区别
下表重点介绍了CSH和BASH的主要区别:
特性 |
CSH |
BASH |
---|---|---|
定义 |
C-Shell命令以'#'开头。 |
Bourne Again Shell以'$'开头。 |
终端 |
CSH代表交互式终端。 |
Bash被认为是非交互式的。 |
开发者 |
Bill Joy提出了CSH。 |
Brian Fox重新创建了Bash的概念。 |
年份 |
CSH首次应用于20世纪70年代。 |
Bash成立于1989年。 |
难度 |
CSH的难度级别为中等。 |
BASH的难度级别为初级。 |
结论
CSH和BASH是使用最广泛的Unix和Linux shell。两者都具有不同的特性和语法,这可能会让不熟悉shell编程的用户感到困惑。CSH是一个C风格的shell。因此,其语法基于C编程语言。CSH还支持变量、流程控制和作业控制。
BASH是一个与Bourne-shell兼容的shell。其语法基于Bourne shell,但它已经被升级,包含了命令行编辑、扩展通配符和改进的信号处理等功能。CSH更适合交互式使用,而BASH更适合shell脚本。