bash一章,但做了一些必要的删节,并且有的地方根据实际情况作.PDFVIP

  • 1
  • 0
  • 约9.93千字
  • 约 9页
  • 2017-11-27 发布于天津
  • 举报

bash一章,但做了一些必要的删节,并且有的地方根据实际情况作.PDF

bash一章,但做了一些必要的删节,并且有的地方根据实际情况作.PDF

bash 编程指南 前言 本文译自《Slackware Linux Unleashed》(第三版)一书的 bash 一章,但做了一些 必要的删节,并且有的地方根据实际情况作了较大的改动,必要的话请参考原文。对本文有 任何问题的话请与我联系:con@ 简介 本文将较为详细地介绍 Linux 下最常用的 shell:bash。bash(Bourne Again Shell)是 Linux 的缺省shell,并被大多数用户所使用,在本文中你将学会: 什么是 shell Linux 上最常见的 shell 命令补齐 (Command-line completion)和通配 命令历史记录 (Command history)和别名 重定向和管道 改变提示符 进程控制 (Job control) 如何用户化配置你的 bash shell 另外你还将看到一些最常用的bash 命令和内存变量的用法,读完本文后你将能更快和 更有效地使用 bash。 Shells in a Nutshell 什么是 shell?总之这个词好象总是出现在Linux 里,但很多新用户并不清楚它的明确 的含义。本节将给出一个确切的解释并说明为什么在Linux 中它显得如此的重要。 什么是 Shell? shell 是你(用户)和 Linux (或者更准确的说,是你和Linux 内核)之间的接口程 序。你在提示符下输入的每个命令都由 shell 先解释然后传给 Linux 内核。 注意: 如果你熟悉m$-dos,你将认出这很象DOS 用户和 COMMAND.COM 之间的关系。唯一的 区别是 的功能远不能和shell 相提并论。 shell 是一个命令语言解释器 command-language interpreter)。拥有自己内建的 shell 命令集。此外,shell 也能被系统中其他有效的 Linux 实用程序和应用程序 utilities and application programs)所调用。 不论何时你键入一个命令,它都被 Linux shell所解释。一些命令,比如打印当前工作 目录命令 pwd),是包含在Linux bash 内部的 就象DOS 的内部命令)。其他命令,比如 拷贝命令 cp)和移动命令 rm),是存在于文件系统中某个目录下的单独的程序。而对用 户来说,你不知道(或者可能不关心)一个命令是建立在 shell 内部还是一个单独的程序。 附图展示了 shell 是如何执行命令解释的,shell 首先检查命令是否是内部命令,不 是的话再检查是否是一个应用程序,这里的应用程序可以是 Linux 本身的实用程序,比如 ls 和 rm,也可以是购买的商 程序,如 xv,或者是公用软件 public domain software), 就象 ghostview。然后shell试着在搜索路径里寻找这些应用程序。搜索路径是一个能找到 可执行程序的目录列表。如果你键入的命令不是一个内部命令并且在路径里没有找到这个可 执行文件,将会显示一条错误信息。而如果命令被成功的找到的话,shell 的内部命令或应 用程序将被分解为系统调用并传给 Linux 内核。 shell 的另一个重要特性是它自身就是一个解释型的程序设计语言,shell 程序设计语 言支持在高级语言里所能见到的绝大多数程序控制结构,比如循环,函数,变量和数组。 shell 编程语言很易学,并且一旦掌握后它将成为你的得力工具。任何在提示符下能键入的 命令也能放到一个可执行的shell程序里,这意味着用 shell语言能简单地重复执行某任务。 shell 如何启动 shell在你成功地登录进入系统后启动,并始终作为你与系统内核的交互手段直至你退出系 统。你系统上的每位用户都有一个缺省的 shell。每个用户的缺省shell在系统里的 passwd 文件里被指定,该文件的路径是/etc/passwd。passwd 文件里还包含有其他东西:每个人的 用户 ID 号,一个口令加密后的拷贝和用户登录后立即执行的程序,(注:为了加强安全性, 现在的系统一般都把加密的口令放在另一个文件--shadow 中,而passwd 中存放口令的部分 以一个 x 字符代

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档