第5章 理解shell

[TOC]

shell的类型

  • 系统一般会默认安装多种shell程序:
    • /bin/sh
    • /bin/bash 大部分发行版本默认是bash
    • /bin/csh
    • ...
  • /etc/passwd文件定义了用户登录时默认使用的shell程序。
  • 对于shell script来讲,存在两种shell:
    • 用户交互shell
    • 默认的系统shell
  • shell script使用两种shell不同,可能存在语法兼容的问题。

shell的父子关系

  • shell可以通过多种方式生成子shell:
    • 在shell环境中运行另一个shell程序(bash, sh, dash等)
    • 使用进程列表(用小括号包含的命令) (ls -l)
    • 管道
  • 子shell会从父shell继承部分环境变量
  • 可以用分号隔开顺序执行的一系列命令 pw; ls; ps -ef
  • 有几种方式可以将命令至于后台运行:
    • 在命令末尾加上&
    • 使用coproc命令

shell的内建命令

  • 内部命令:shell程序自带的命令
  • 外部命令:shell程序之外的命令
  • 执行内部命令不会创建新进程,但执行外部命令会创建新进程

你可能感兴趣的:(第5章 理解shell)