Shell 简介

Shell 简介

简单了解不同的 shell

Linux Notes

2017.09.03

👣 #shell #gnu #bash

Shell 自身是一个用 C 语言编写的程序,是用户使用 Unix 或 Linux 的桥梁,用户的大部分工作都需要通过 shell 来完成。Shell 虽然不是 Unix/Linux 系统内核的一部分,但它调用了系统核心的大部分功能来执行程序、建立文件并以并行的方式来协调各个程序的运行。

Shell 的核心是命令行提示符,该命令行提示符是 shell 负责交互的部分。它允许你输入文本命令,然后解释命令,并在内核中执行。

Shell 包含了一组内部命令,用这些命令可以完成诸如复制文件、移动文件、重命名文件、显示和终止系统中正运行的程序等操作。Shell 也允许你在命令行提示符中输入程序的名称,它会将程序名传递给内核以启动它。

你也可以将多个 shell 命令放入文件中作为程序执行,这些文件被称作 shell 脚本。你在命令行上执行的任何命令都可放进一个 shell 脚本中作为一组命令执行。

在 Linux 系统上,通常有好几种 Linux shell 可用。不同的 shell 有不同的特性,有些更利于创建脚本,有些则更利于管理进程。常见 Linux 发行版默认的 shell 都是 bash shell。Bash shell 是由 GNU 项目开发,被当作标准 Unix shell——Bourne shell(以创建者的名字命名)的替代品。

下表列出了 Linux 中常见的几种不同 shell:

shell描述
ash一种运行在内存受限环境中简单的轻量级 shell,但与 bash shell 完全兼容
korn一种与 Bourne shell 兼容的编程 shell,但支持如关联数组和浮点运算等一些高级的编程特性
tcsh一种将 C 语言中的一些元素引入到 shell 脚本中的 shell
zsh一种结合了 bash、tcsh 和 korn 的特性,同时提供高级编程特性、共享历史文件和主题化提示符的高级 shell (我目前已切换到 zsh)

先介绍到这里,下一步了解一些基础的 shell 命令。

林宏

Frank Lin

Hey, there! This is Frank Lin (@flinhong), one of the 1.41 billion . This 'inDev. Journal' site holds the exploration of my quirky thoughts and random adventures through life. Hope you enjoy reading and perusing my posts.

YOU MAY ALSO LIKE

Bash shell 使用入门

Linux Notes

2017.09.04

Bash shell 使用入门

大多数 Linux 发行版的默认 shell 都是 GNU bash shell,它能提供对 Linux 系统的交互式访问,其中最基础的便是文件和目录的访问和操作。

Shell 脚本中的循环语句

Linux Notes

2017.11.13

Shell 脚本中的循环语句

结构化循环命令在编程中很常见。通常需要重复一组命令直到触及某个特定条件。比如处理某个目录下的所有文件、系统上的所有用户或某个文本文件中的所有内容。bash shell 提供了三个常用的循环命令 for、while 和 until,就来好好研究研究吧。

Ads by Google