时间:2017-08-17 19:55:51来源:魔法系统之家下载作者:qipeng
很多Linux用户不知道shell不仅能够编辑脚本,还能在脚本上调用另一个脚本文件,包括php文件,那么具体应该如何调用呢?下面小编就给大家介绍下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命令实现。
2017-08-17
如何修复一个Panic的Linux内核?2017-08-17
Linux删除文件(夹)、创建文件(夹)命令是什么?2017-08-17
Linux系统如何配置双显卡?为什么Arch Linux不适合当作服务器操作系统?可能很多用户都发现了,Linux服务器操作系统一般都是Ubuntu Server、Cent OS、Fedora或者Red Hat等,为什么很少看到Arch Linux呢?因为Arch Linux在服务方面确实存在一些劣势,下面...
2017-08-17
有些用户为了使桌面更好看、更具动感性,于是就想要设置系统的3D桌面特效,不过不少人却不知道Ubuntu 3D桌面特效怎么设置?其实方法很简单,如果你不知道的话,那就赶紧来看看小编整理的Ubuntu 3D桌面特效设置方法吧!...
2017-08-17