zoukankan      html  css  js  c++  java
  • 介绍shell的来龙去脉给你看

    一、什么是shell?

    先理解几个概念:
    1. shell(贝壳,外壳):shell是一个用c语言编写的程序,通过shell,用户可以访问linux系统内核服务,它类似dos下的command和我们熟知windows中的cmd.exe(秒懂有木有~)
    2. shell既是一种命令语言又是一种程序设计语言,但是shell script是一种shell编写的脚本程序不是指shell本身。(也就是说我们常说的shell是shell脚本,并不是shell软件本身)
    3. linux的shell种类很多一个系统可以存在多个shell(多个操作内核的shell软件),可以通过cat /etc/shells命令来查看系统安装的shell。Bash由于易用和免费,被广泛使用,linux系统默认的shell就是Bash

    二、shell的作用:shell软件把shell命令转换成内核认识的命令,交给linux内核处理。

    三、运行shell脚本的命令的几种思路:
    前提:文件为a.sh
    1 ./a.sh会用你脚本中第一行的那个#!XXX的shell来执行语句 ,如果XXX是bash那么就是用bash运行这段脚本
    2 sh a.sh则是用sh来执行语句,可以不写#!XXX的shell来执行语句 ,使用默认的bash去执行这段脚本
    3 还有一种可能就是./a.sh确定了文件路径,而sh a.sh一定要在a.sh所在目录

    四、环境变量环境变量:

        局部变量(相当于java中的局部变量):只在当前shell实例(当前脚本)中有效
        环境变量(相当于java中的成员变量):用export修饰,可用set命令查看当前环境变量

    总结:
    1 、export的变量,会被进程继承下去,子进程修改该变量,父进程不受影响(在java中也一样,只不过不是export修饰)
    2、export所在进程结束,该变量就消失(子类的变量)
    3、我们在窗口中(不是脚本文件中)定义环境变量,在脚本文件中也可打印,说明这个窗口就是shell的实例!!!,这个实例下面的脚本都是他的子shell
    4、用source执行脚本文件后就相当于在本shell实例中定义了环境变量

    五、shell参数传递://todo
    六、函数使用:

    原文链接:https://blog.csdn.net/smartshylyboy/article/details/82118756

  • 相关阅读:
    并发编程学习笔记(八、volitile)
    MySQL调优学习笔记(六、SQL查询优化)
    MySQL调优学习笔记(五、高性能索引)
    MySQL调优学习笔记(四、索引)
    MySQL调优学习笔记(三、数据库优化)
    MySQL调优学习笔记(二、MySQL调优基础)
    MySQL调优学习笔记(一、MySQL基础)
    密码-简单加密
    密码-这不是摩斯密码
    密码-聪明的小羊
  • 原文地址:https://www.cnblogs.com/yoyowin/p/13023544.html
Copyright © 2011-2022 走看看