zoukankan      html  css  js  c++  java
  • 架构师的成长之路初片~shell-1

    1,什么是shell

    Linux内核用户之间的解释器程序

    通常指 /bin/bash

    负责向内核翻译及传达用户/程序指令

    相当于操作系统的“外壳”

    2Shell的使用方式

    交互式   —— 命令行

    人工干预、智能化程度高

    逐条解释执行、效率低

    非交互式 —— 脚本

    需要提前设计、智能化难度大

    批量执行、效率高

    方便在后台静悄悄地运行

    3,什么是Shell脚本?

    提前写好可执行语句,能够完成特定任务的文件

    顺序、批量化处理

    [root@svr7 ~]# cat /etc/shells   //查看所有解释器

    [root@svr7 ~]# sh   //切换成sh解释器

    sh-4.2# ls    //利用sh解释器输入命令

    sh-4.2#exit   //退出sh解释器

    [root@svr7 ~]#yum -y install ksh   //安装新解释器

    [root@svr7 ~]#ksh   //进入新解释器

    -------------------------------------------------------------------------------------------

    Bash优点,支持tab键、快捷键、别名、历史命令、管道、重定向

    ------------------------------------------------------------

    二,脚本的编写与执行

     编写脚本的规范:

    1, 声明解释器

    #!/bin/bash

    2, 注释

    #注释的内容可以是脚本功能描述、作者介绍等信息

    3, 执行指令

     

    脚本的执行方式:

    1, 添加x权限 使用绝对或者相对路径执行

    chmod  +x  test01.sh

    2,使用解释器执行脚本,无需x权限,会开启子进程

    bash test01.sh

    bash---bash echo abc  mkdir xyz  cd xyz    //该方式会在bash父进程中开启一个bash子进程,然后由子进程执行任务命令

    将之前脚本修改为:

    #!/bin/bash

    echo abc

    mkdir xyz

    cd xyz

    //使用bash执行看不到进入xyz目录的效果,因为bash开启了子进程

    执行完毕后退出了,父进程并没有进入xyz目录,而使用source执行脚

    本可以看到进入xyz目录,因为没有开启子进程,而是父进程亲自进入

    该目录

     

    3,使用source命令执行脚本,无需x权限,不会开启子进程

    source test01.sh

    bash echo abc  mkdir xyz  cd xyz    //该方式由父进程亲自执行任务命令

     

     

     

     

     

     

     

     

  • 相关阅读:
    [转]调试winlogon
    [转]整理一份我对Windows文件系统过滤驱动的sFilter工程代码的详细说明
    [转]在内核调试会话中设置用户态断点
    用Windbg调试GINA
    [转]文件过滤驱动开发
    [转]NDIS中间层驱动开发在Win7系统下和Windows XP系统下的区别
    [转]windbg下在kd模式也可以调试用户模式程序
    ProgressDialog多了一个外边框
    Dx trouble processing "java/nio/CharBuffer.class":
    ImageView图片重叠问题
  • 原文地址:https://www.cnblogs.com/ahaocloud/p/14374553.html
Copyright © 2011-2022 走看看