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

  很多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命令实现。

未经允许不得转载:系统吧-电脑系统大神 » Linux shell如何调用另一个脚本文件

赞 (0)