魔法系统之家下载 - 系统之家,XP系统之家,GhostXP系统,纯净版XP系统,Windows7下载之家

当前位置:首页 > 系统教程 > Linux教程 > 详细页面

Linux shell如何调用另一个脚本文件

时间:2017-08-17 19:55:51来源:魔法系统之家下载作者:qipeng

  很多Linux用户不知道shell不仅能够编辑脚本,还能在脚本上调用另一个脚本文件,包括php文件,那么具体应该如何调用呢?下面小编就给大家介绍下Linux 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 ‘your are in second file’

  。 first

  source filename和 。 filename 应该是同一回事,都是在*当前*Shell环境中执行脚本。也可以使用sh filename,那是在当前Shell的子Shell中执行脚本。

  可以通过下面这两个脚本来体会三种调用方式的不同:

  1.sh

  #!/bin/bash

  A=B

  echo “PID for 1.sh before exec/source/fork:$$”

  export A

  echo “1.sh: $A is $A”

  case $1 in

  exec)

  echo “using exec…”

  exec 。/2.sh ;;

  source)

  echo “using source…”

  。 。/2.sh ;;

  *)

  echo “using fork by default…”

  。/2.sh ;;

  esac

  echo “PID for 1.sh after exec/source/fork:$$”

  echo “1.sh: $A is $A”

  2.sh

  #!/bin/bash

  echo “PID for 2.sh: $$”

  echo “2.sh get $A=$A from 1.sh”

  A=C

  export A

  echo “2.sh: $A is $A”

  执行情况:

  $ 。/1.sh

  PID for 1.sh before exec/source/fork:5845364

  1.sh: $A is B

  using fork by default…

  PID for 2.sh: 5242940

  2.sh get $A=B from 1.sh

  2.sh: $A is C

  PID for 1.sh after exec/source/fork:5845364

  1.sh: $A is B

  $ 。/1.sh exec

  PID for 1.sh before exec/source/fork:5562668

  1.sh: $A is B

  using exec…

  PID for 2.sh: 5562668

  2.sh get $A=B from 1.sh

  2.sh: $A is C

  $ 。/1.sh source

  PID for 1.sh before exec/source/fork:5156894

  1.sh: $A is B

  using source…

  PID for 2.sh: 5156894

  2.sh get $A=B from 1.sh

  2.sh: $A is C

  PID for 1.sh after exec/source/fork:5156894

  1.sh: $A is C

  $

  上面就是Linux shell调用脚本文件的方法介绍了,当你在调用php文件时,不一定使用php,也可使用shell命令实现。

分享到:

相关信息

  • Arch Linux不适合当作服务器操作系统的四大原因

    为什么Arch Linux不适合当作服务器操作系统?可能很多用户都发现了,Linux服务器操作系统一般都是Ubuntu Server、Cent OS、Fedora或者Red Hat等,为什么很少看到Arch Linux呢?因为Arch Linux在服务方面确实存在一些劣势,下面...

    2017-08-17

  • Ubuntu 3D桌面特效怎么设置?

    有些用户为了使桌面更好看、更具动感性,于是就想要设置系统的3D桌面特效,不过不少人却不知道Ubuntu 3D桌面特效怎么设置?其实方法很简单,如果你不知道的话,那就赶紧来看看小编整理的Ubuntu 3D桌面特效设置方法吧!...

    2017-08-17

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载