4.shell内置命令

4.1 Bourne Shell

  • : [arguments] - 什么都不做,除了扩展arguments和重定向。返回状态是0。
  • . filename [arguments] - 在当前的shell环境读取和执行filename中的命令
  • eval [arguments] - 参数连接到一起成为一个命令,然后读取和执行,退出状态是eval的退出状态。
  • exec [-cl] [-a name] [command [arguments]] - 如果提供了command,会代替当前的shell,不会创建新的进程。如果没有指定command,可能会用到重定向来影响当前的shell环境。
    if [ $# -gt 0 ];then
        exec 0<$1;    #将文件绑定到标准输入(0-标准输入 1-标准输出 2-标准错误),默认第一个参数是输入的文件;
    fi

    while read line
    do
        echo $line;
    done<&0;    #从标准输入读取数据
    exec 0<&-   #重新绑定标准输入到命令行
  • export [-fn] [-p] [name[=value]] - 标记每个name传递给子线程。