Shell脚本中引用、调用另一个脚本文件的2种方法

   这篇文章主要介绍了Shell脚本中引用、调用另一个脚本文件的2种方法,本文介绍了两种方法的语法,然后给出实际使用实例和一些要注意的地方,需要的朋友可以参考下

  在Java,Python中,可以用import的方式来进行脚本或模块之间调用,例如:

   代码如下:

  >>> import math

  >>> math.sqrt(4)

  2.0

  在Shell中要如何调用别的shell脚本,或别的脚本中的变量,函数呢?

  方法一: . ./subscript.sh

  方法二: source ./subscript.sh

  注意:

  1.两个点之间,有空格,千万注意.

  2.两个脚本不在同一目录,要用绝对路径

  3.为简单起见,通常用第一种方法

  例如:

  代码如下:

  main.sh #主脚本

  subscripts.sh #子脚本,或者说被调脚本

  [code]

  [code]

  ###subscripts.sh 脚本内容如下:###

  #!/bin/bash

  string="Hello,World! n"

  代码如下:

  ###main.sh 脚本内容如下###

  #!/bin/bash

  . ./subscripts.sh

  echo -e ${string}

  exit 0

  输出结果:

  代码如下:

  # chmod +x ./main.sh

  # ./main.sh

  Hello,World!

  #

  注意:

  1.被调脚本可以没有执行权限,调用脚本必须有可执行权限

  2.chmod +x ./main.sh #注意这里要有点,否则bash脚本可能找不到

时间: 2024-10-02 01:39:49

Shell脚本中引用、调用另一个脚本文件的2种方法的相关文章

WinCE中显示32位色BMP文件的一种方法

      前面介绍了如何显示资源中BMP图片的方法,这里补充一个显示32位色BMP图片文件的方法,并再次比较直接写显存与用GDI的区别.       首先将WinCE5.0的模拟器显示属性修改为480*272*32,并准备一张32位色的图片,如下图所示.                       使用直接写显存的方法,关键代码如下:  1     DWORD dwRet;2     HANDLE hFile = CreateFile(_T("\\1.bmp"),GENERIC_RE

Shell脚本中调用、引用、包含另外一个脚本文件的两种方法_linux shell

脚本 first (测试示例1) 复制代码 代码如下: #!/bin/bash echo 'your are in first file'  问)在当前脚本文件中调用另外一个脚本文件? 方法一: 使用 source 脚本 second (测试示例2) 复制代码 代码如下: #!/bin/bash echo 'your are in second file' source first 方法二: 使用 . 脚本 second (测试示例3) 复制代码 代码如下: #!/bin/bash echo '

方法-c#中一个脚本调用另一个脚本的函数

问题描述 c#中一个脚本调用另一个脚本的函数 除了public static外还用什么方法,可以的话,举一个简单的例子 解决方案 不同的命名空间要先using比如一个程序,这么写的namespace WindowsFormApplication1{ public class Form1 : Form { ... }}它要调用namespace Library1{ class Class1 { public void 方法() { ... } }}里面的函数,就需要带上命名空间:在第一个代码头上加

使用Template模板生成了脚本后怎么把这个脚本的内容写入到一个txt文件中呢?求大神解答

问题描述 使用Template模板生成了脚本后怎么把这个脚本的内容写入到一个txt文件中呢?求大神解答 public static void main(String[] args) throws Exception { Map map = new HashMap(); Configuration cfg = new Configuration(); Template t = cfg.getTemplate("src/main/webapp/model/sqoop_header.ftl"

jsp-JSP中编写JS代码过程中,调用了一个JSP表达式,发现一个问题,麻烦各位大神解答

问题描述 JSP中编写JS代码过程中,调用了一个JSP表达式,发现一个问题,麻烦各位大神解答 背景: 楼主使用Myelipse新建了一个Web项目,在编写一个JSP文件的时候遇到一个问题,首先是使用了img,并且写了一个事件,代码如下: <imgclass="poke" src="poke/back.jpg" title="hit" id="play_id_3" onClick="change_pic()&qu

C#中调用SAPI实现语音识别的2种方法

  这篇文章主要介绍了C#中调用SAPI实现语音识别的2种方法,本文直接给出实现代码,需要的朋友可以参考下 通过微软的SAPI,不仅仅可以实现语音合成TTS,同样可以实现语音识别SR.下面我们就介绍并贴出相关代码.主要有两种方式: 1.使用COM组件技术,不管是C++,C#,Delphi都能玩的转,开发出来的东西在XP和WIN7都能跑.(注意要引入系统组件SpeechLib,XP要安装识别引擎) 2.使用WIN7的windows api,其实最终还是调用了SAPI,所以开发出来的东西就只能在WI

Excel中制作一个项目文件目录的两种方法

  Excel中制作一个项目文件目录的两种方法.如下图所示,就是一个项目文件夹内的所有文件: 接下来,先提取文件名称. 如果文件比较少,可以直接输入到Excel文档中,但是如果文件比较多,就要想想办法了. 方法一 在工程文件夹内,新建一个记事本文档,输入下面的内容后保存: DIR *.* /B >目录.TXT 将记事本文档的后缀名.txt 修改为.bat 然后双击这个文件,就会得到一个名为"目录"的记事本文件,里面会包含当前文件夹内的所有文件名. 这样就可以将目录中的文档名复制到

C#中要从另一个软件的表格中读取数据,不借助文件,还有什么方法可以读取到?

问题描述 C#中要从另一个软件的表格中读取数据,不借助文件,还有什么方法可以读取到? C#中要从另一个软件的表格中读取数据,不借助文件,还有什么方法可以读取到? 解决方案 windpws api,如果是listview标准控件 readprocessmemory,直接读内存 解决方案二: 要么另一个软件给你提供接口数据..

asp.net中显示DataGrid控件列序号的几种方法

asp.net|datagrid|datagrid控件|显示 asp.net中显示DataGrid控件列序号的几种方法 作者:郑佐 2004-9-10 在aps.net中多数据绑定的控件很多,论功能来说,应该属DataGrid最为齐全,但它没有提供现成的显示记录序号的功能,不过我们可以通过它所带的一些参数来间接得到序号,下面来看看怎样得到和显示序号值计算方式如下: (1)在后台 DataGrid.CurrentPageIndex * DataGrid.PageSize + e.Item.Item