Linux学习|Linux学习笔记——Shell编程概述

Shell名词概述

  • Kernel
    • Linux的内核主要是和硬件打交道
  • Shell
    • 命令解释器(command interpreter)
    • Shell是一个用C语言编写的程序
    • Shell是一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务
  • Shell的两大主流
    • sh:
      • Bourne shell(sh),Solaris,hpux默认shell
      • Bourne again shell(bash),Linux系统默认shell
  • csh
    • C shell(csh)
    • tc shell(tcsh)
  • #!声明
    • 告诉系统其后路径所指定的程序即是解释此脚本文件的Shell程序
    • Linux学习|Linux学习笔记——Shell编程概述
      文章图片
    • Linux学习|Linux学习笔记——Shell编程概述
      文章图片
Shell脚本的执行方式
  • 输入脚本的绝对路径或者相对路径
    • /root/hello.sh(脚本文件)

    • ./hello.sh

    • Linux学习|Linux学习笔记——Shell编程概述
      文章图片
    • Linux学习|Linux学习笔记——Shell编程概述
      文章图片
  • bash或sh +脚本
    • sh hello.sh

    • 当脚本没有x权限时,root和文件所有者通过该方式可以正常执行
    • Linux学习|Linux学习笔记——Shell编程概述
      文章图片
  • 在脚本的路径前再加“.”或source
    • source hello.sh(脚本文件)

    • Linux学习|Linux学习笔记——Shell编程概述
      文章图片
  • 区别
    • 第一种和第二种会新开一个bash,不同的bash中的变量无法共享
    • 第三种是在同一个shell里面执行的
    • Linux学习|Linux学习笔记——Shell编程概述
      文章图片
    • 第一种方式(会多一个bash进程)
      • Linux学习|Linux学习笔记——Shell编程概述
        文章图片
      • Linux学习|Linux学习笔记——Shell编程概述
        文章图片
    • 第二种方式(多一个sh进程)
      • Linux学习|Linux学习笔记——Shell编程概述
        文章图片
      • Linux学习|Linux学习笔记——Shell编程概述
        文章图片
    • 第三种方式
      • Linux学习|Linux学习笔记——Shell编程概述
        文章图片
      • Linux学习|Linux学习笔记——Shell编程概述
        文章图片
    • Linux学习|Linux学习笔记——Shell编程概述
      文章图片
  • export
    • 可以将当前进程的变量传递给子进程去使用
    • 配置profile的时候,所有的变量前必须加export
    • Linux学习|Linux学习笔记——Shell编程概述
      文章图片
    • Linux学习|Linux学习笔记——Shell编程概述
      文章图片
      • 第二种方式执行
        • Linux学习|Linux学习笔记——Shell编程概述
          文章图片
      • 第三种方式执行
        • Linux学习|Linux学习笔记——Shell编程概述
          文章图片
      • Linux学习|Linux学习笔记——Shell编程概述
        文章图片
    • 使用export
      • Linux学习|Linux学习笔记——Shell编程概述
        文章图片
      • 当前变量传递到了子进程

    推荐阅读