翼度科技»论坛 云主机 LINUX 查看内容

# Shell 是什么?

8

主题

8

帖子

24

积分

新手上路

Rank: 1

积分
24
原文:What is a Shell?
注意:本文是对原文的一个翻译!
Shell是一个宏处理器,用于执行命令。宏处理器意味着,将文本和符号展开,创建一个更大的表达式。
Unix shell 既是一个命令解释器,也是一门编程语言。作为一个命令解释器,它提供了丰富的GUN工具集可以与用户进行交互。作为编程语言,它可以组合使用这些工具。创建的文件能包含命令,而这个文件同时也将成为一个命令──这是个新的命令,有着与/bin中的命令一样的状态。用户组合命令,建立自动化命令的环境。
Shell可以交互的使用,也可以以非交互的方式使用。交互状态,从键盘获取输入;非交互状态,从文件中执行命令。
Shell能以同步(synchronously)或异步(asynchronously)的方式执行命令。重定向构造,可以控制输入和输出命令的粒度(fine-grained)。shell也允许控制命令环境的内容。
Shell提供了一些内建的命令,用于实现工具所不能或不方便实现的功能。这些命令有:

  • cd
  • break
  • continue
  • exec

    • exec 不能在外部实现,因为它会直接操作shell本身。

  • history
  • getopts
  • kill
  • pwd
    有一些命令可以以工具的方式实现,但实现在中shell更为便。
执行命令只是基本,与大多数的编程语言一样,shell也提供了变量(variables),流控制结构(flow control constructs),引用(quoting)与函数(function)。
Shell提供了专门用于交互使用的功能,有:

  • 作业控制(job control)
  • 命令行编辑(command line editing)
  • 命令历史(command history)
  • 别名(aliases)

来源:https://www.cnblogs.com/lin-hui/p/17179476.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具