как отправить переменную из php в файл .sh - PullRequest
1 голос
/ 28 июля 2011

Можно ли отправить переменную из сценария php в сценарий оболочки ?? Код приведен ниже "

Exec ( './ test.sh');

Я хочу отправить переменную с именем $ path в файл test.sh и получить эту переменную в файле test.sh, и хочу использовать это значение. Так как мне получить значение в этом файле test.sh? есть какое-то решение для этого .. ?? заранее спасибо ..

Ответы [ 2 ]

0 голосов
/ 28 июля 2011

Есть несколько способов сделать это:

Передать сценарию в качестве аргумента:

<?php
exec("./test.sh ". escapeshellarg($path));

А из скрипта:

#!/bin/bash
echo "Path is $1"

Проход через окружающую среду

<?php
putenv('PATH='. $path);
exec("./test.sh");

А из сценария:

#!/bin/bash
echo "$PATH"

На стандартном входе

Полагаю, есть способ сделать это, но я не смог выяснить, как это сделать при быстром поиске.

0 голосов
/ 28 июля 2011

Конечно, вы можете передавать переменные так же, как и в командной строке. Просто добавь их. В целях безопасности перед тем как сделать это, экранируйте переменную:

exec('./test.sh ' . escapeshellarg($path));

Тогда в вашем скрипте оболочки это доступно как $1:

#!/bin/sh
echo $1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...