`
kabike
  • 浏览: 610791 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

linux执行脚本的三种方式

阅读更多

目前据我所知有三种
./bar.sh 是folk的子进程中执行.
. ./bar.sh 是把./bar.sh的内容读取到当前运行环境开始执行
exec ./bar.sh 是把当前进程替换为./bar.sh的进程.

假设有脚本foo.sh
#!/bin/sh
A="hello";
echo "before,A is $A"
./bar.sh
echo "after ,A is $A"

脚本bar.sh
#!/bin/sh
A="world";

执行foo.sh后输出如下
before,A is hello
after ,A is hello
因为bar.sh是在子进程中执行的,不会影响父进程的变量.

改成 . ./bar.sh后输出为
before,A is hello
after ,A is world
因为bar.sh的内容被提到了父进程中执行了.

然后改为exec ./bar.sh后输出为
before,A is hello
因为父进程被替换了,所以执行完了子进程之后,后面的语句就不执行了.
分享到:
评论

相关推荐

    Linux系统脚本的三种执行方式

    ### Linux系统脚本的三种执行方式详解 #### 一、概述 在Linux系统中,脚本是一种非常重要的工具,能够帮助用户自动化执行一系列任务。为了更好地理解和掌握如何在Linux环境中执行脚本,本文将详细介绍三种常见的...

    linux下批量执行oracle脚本的shell脚本

    Shell脚本是Linux系统中的一种强大的自动化工具,它允许用户通过编程的方式来调用系统命令,执行一系列操作。 `create_database.sh` 这个文件名暗示了这是一个创建数据库的shell脚本。在Oracle中,创建数据库通常...

    Linux通过Shell脚本命令修改密码的两种方式

    交互方式修改密码 1. ssh 远程到主机; ... ... 3. passwd username ... ...使用脚本修改密码 很多时候我们可能需要远程执行服务器...此时可以使用如下两种方式修改密码: 方式1: echo password | passwd testuser --stdin > /dev

    linux服务器中批量运行脚本文件的方法

    在Linux服务器环境中,批量执行脚本文件是一种常见的任务,尤其对于需要进行大量计算或自动化运维的场景,如在本文提到的Abaqus作业。Abaqus是一款强大的有限元分析软件,常常用于工程模拟和计算。在Windows系统中,...

    Linux Shell 脚本攻略 中文 第三版和源码

    "Linux Shell 脚本攻略 中文 第三版和源码"提供了全面的学习资源,帮助你深入理解并熟练掌握Shell脚本编程。 首先,让我们了解什么是Linux Shell。Linux Shell是操作系统内核与用户交互的界面,它是命令行解释器,...

    linux shell脚本启动java类

    详细的linux shell脚本启动java代码类。

    linux下定时执行脚本

    在Linux系统中,定时执行脚本是一项非常常见的任务,它可以帮助我们自动化地完成日常的维护工作,例如数据备份、日志清理等。本篇将基于标题"Linux下定时执行脚本"来详细讲解如何在Linux环境下设置定时任务,并结合...

    lifekeeper for linux 自定义脚本

    在描述中提到的三个脚本——`restore.sh`, `remove.sh`, 和 `quickCheck.sh`,都是与LifeKeeper协同工作的关键组件。 1. `restore.sh`:这个脚本通常用于服务的恢复操作。当LifeKeeper检测到主节点故障并完成服务...

    SUSE Linux下开机自动运行脚本命令的方法

    ### SUSE Linux 下开机自动运行脚本命令的方法 #### 概述 在SUSE Linux(如openSUSE)中,为了实现系统启动时自动执行某些脚本或命令,需要了解和利用特定的启动脚本机制。本文将详细介绍openSUSE 11和10 SP2中的...

    Linux shell 脚本攻略

    Linux Shell脚本是Linux操作系统中一种强大的自动化工具,它允许用户通过编写脚本来执行一系列命令,实现系统管理和任务自动化。本书《Linux Shell脚本攻略》(第2版)深入浅出地介绍了Shell脚本的编写技巧和实战...

    linux 通过脚本执行java程序

    在Linux环境中,通过脚本执行Java程序是一种常见的实践,尤其对于服务器端应用或者自动化任务来说。这使得我们能够更方便地管理和控制Java应用程序的启动、停止以及监控。下面将详细介绍如何编写一个简单的bash脚本...

    DM8_Linux服务脚本使用手册.pdf

    这些脚本是DM数据库在Linux系统中稳定运行的关键,确保了数据库实例和集群的正常操作。DM8提供了13个服务脚本模板,涵盖了监控、服务管理、审计等多个方面,以满足数据库管理和维护的需求。 **读者对象** 该手册...

    Linux批量ping的脚本(Linux工具箱).pdf

    Linux批量ping的脚本是Linux工具箱中的一种实用工具,用于批量检查某个网段的连通性。下面是该脚本的详细介绍。 一、环境准备 在使用Linux批量ping的脚本之前,需要准备好环境。这里使用了ENSP模拟器来模拟某个IP...

    LINUX SHELL 脚本攻略

    Linux Shell脚本攻略是一本针对Linux操作系统下Shell脚本编写的指导书籍。Shell脚本是利用Shell编程语言来控制和自动化命令序列的脚本,常用于系统管理、服务器管理、自动化任务处理等领域。本书的第三版包含了全面...

    Linux-shell脚本全面学习.pdf

    Linux Shell 脚本编程基础知识点总结 Linux 脚本编写基础 1.1 语法基本介绍 * `#!` 符号用来告诉系统它后面的参数是用来执行该文件的程序 * 在 Linux 中,使用 `/bin/sh` 来执行程序 * 编辑好脚本后,需要使其可...

    Linux shell脚本.rar

    文件包含大作业shell脚本(快速备份系统)源码,实验课做的Linux实验shell脚本:Samba实验,DDNS(DHCP服务器 和DNS服务器的配置)的shell脚本,运行脚本每个实验只需要两三分钟即可完成。 其中sy1为实验一脚本,sy2...

    linux shell脚本基础学习

    这样就可以通过`./filename.sh`来运行脚本了。 **1.1.2 注释** 在shell脚本中,使用`#`符号来进行注释。注释从`#`开始,一直延伸到该行的末尾。注释可以帮助理解和维护脚本,尤其是当脚本变得复杂时。例如: ```...

    Linux下定时执行脚本

    Linux 下定时执行脚本 Linux 下的定时执行脚本是通过使用 crontab 文件来实现的。 crontab 文件中包含了一些计划任务,可以根据需要进行添加、删除和修改。下面将详细介绍 Linux 下的定时执行脚本的设置和使用。 ...

    Linux的shell脚本

    Linux Shell 脚本是一种为 Shell 编写的脚本程序。Shell 是一种命令语言,又是一种程序设计语言。Shell 脚本的主要作用是帮助用户更方便地使用 Linux 操作系统。 一、 Shell 介绍 Shell 是一个用 C 语言编写的程序...

Global site tag (gtag.js) - Google Analytics