在linux中怎么运行脚本函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在linux中怎么运行脚本函数相关的知识,希望对你有一定的参考价值。

1、同一脚本文件中的函数:
#!/bin/sh
function func1()

echo $1

func1 "Hello world!"

2、其它脚本文件中的函数:
func.sh文件内容如下(其中定义了函数func1,需要1个参数):
#!/bin/sh
function func1()

echo $1

主程序脚本:
#!/bin/sh
. func.sh
func1 "Hello world!"
参考技术A

首先脚本需要有执行权限  chmod u+x file.sh

执行脚本有三种方dao法:

1. ./file.sh      

特点:开启1653bash子进程来版执行,也就是开权启额外的进程来进行,不影响原进程的变量、配置等

2. bash file.sh   

特点:和./file.sh相同

3. source file.sh 或者 . file.sh  

特点:在原bash进程中执行脚本。

第三种方法主要用于在脚本中切换用户su、切换目录cd等命令。

source 和 . 命令是相同的。你可以搜索 source   更详细的Linux命令介绍可看下图查询

在 linux bash 中运行 php 脚本(php 函数)

【中文标题】在 linux bash 中运行 php 脚本(php 函数)【英文标题】:Running php script (php function) in linux bash 【发布时间】:2011-07-29 19:19:34 【问题描述】:

我们如何使用 Linux bash 运行 php 脚本?

php文件test.php

test.php 包含:

<?php echo "hello\n" ?>

【问题讨论】:

除了下面的答案之外,如果您使用的是 PHP 短标签 (&lt;? … ?&gt;),请确保在 php.ini 中启用它们。 【参考方案1】:

从命令行输入:

php -f filename.php

确保 filename.php 包含并执行您要测试的函数。您回显的任何内容都会出现在控制台中,包括错误。

请注意,Apache PHP 的 php.ini 通常与 CLI PHP(命令行界面)不同。

参考:https://secure.php.net/manual/en/features.commandline.usage.php

【讨论】:

【参考方案2】:

首先检查您的 PHP 安装是否支持 CLI。类型:php -v。您可以通过 2 种方式从命令行执行 PHP:

    php yourfile.php php -r 'print("Hello world");'

【讨论】:

【参考方案3】:

有两种方法可以做到这一点。一种是已经提到的,即:

php -f filename.php

第二个选项是使脚本可执行 (chmod +x filename.php) 并将以下行添加到 .php 文件的顶部:

#!/path/to/php

我不确定网络服务器是否喜欢这样,所以如果您还想在网站中使用 .php 文件,那可能不是最好的主意。不过,如果您只是在编写某种脚本,输入./path/to/phpfile.php 比每次都输入php -f /path/to/phpfile.php 更容易。

【讨论】:

哈希爆炸方法只有在您使脚本的权限可执行时才有效 你也可以运行which php &gt; filename.php然后chmod +x filename.php然后编辑文件。 请注意,@YzmirRamirez 的评论将覆盖 filename.php 如果它存在【参考方案4】:

只需在 linux 终端中运行即可获取 phpinfo。

   php -r 'phpinfo();'

并运行 index.php 之类的文件

    php -f index.php

【讨论】:

【参考方案5】:

应该这样做:

php test.php

【讨论】:

【参考方案6】:
php -f test.php

查看manual 了解从命令行运行 PHP 的完整详细信息

【讨论】:

【参考方案7】:
php test.php

应该这样做,或者

php -f test.php

要明确。

【讨论】:

【参考方案8】:

我需要在 Bash 脚本中解码 URL。所以我决定以这种方式使用PHP:

$ cat url-decode.sh
#!/bin/bash
URL='url=https%3a%2f%2f1%2fecp%2f'
/usr/bin/php -r '$arg1 = $argv[1];echo rawurldecode($arg1);' "$URL"

样本输出:

$ ./url-decode.sh 
url=https://1/ecp/

【讨论】:

以上是关于在linux中怎么运行脚本函数的主要内容,如果未能解决你的问题,请参考以下文章

在linux下怎么让一个脚本定时运行

linux下创建一个脚本,双击后,点“在终端中执行”没反映,但点运行脚本执行,请问是为啥?

linux下创建一个脚本,双击后,点“在终端中执行”没反映,但点运行脚本执行,请问是为啥?

每天三分钟搞定linux shell脚本26 函数返回值

在 linux bash 中运行 php 脚本(php 函数)

如何写一个shell脚本在Linux下来运行main函数