Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

fernandotholl

[Resolvido] Passagem de parâmetros Linha de comando/Shell Script/

Recommended Posts

Bom dia Pessoal!

 

Eu tenho o seguinte Shell Script

 

Arquivo: process.sh

#!/bin/bash
# Script Created By Fernando Tholl On 03 Sept, 2011
# Info: XX;
echo "Loading XX Execution..."; /usr/bin/php /home/fernando/public_html/aplicativo/core/cron/arquivo.php echo

 

Ele chama o arquivo "aquivo.php"

 

Arquivo: arquivo.php

<?

require_once('config/constants.php');
require_once(DEFAULT_PATH . '/core/cron/lib/arquivo.class.php');

$conn = mysql_connect(CRON_DB_SERVER, CRON_DB_USER, CRON_DB_PASS) or die("Could not connect to the database");
mysql_select_db(CRON_DB_NAME, $conn) or die("Unable to select database");

echo "[Capture Registers]\n";
echo "====================================================================================\n\n";
echo "Step 3: \nReading directories and creating processes:\n\n";

print_r($argv);

/* Continuação do código aqui... */

?>

 

Eu vou rodar esse script na CRON, por isso preciso passar para o arquivo.php alguns parametros pela variavel $argv[]. Eu passo no Shell a seguinte instrução:

 

Comando: Shell

./process.sh opcao1

 

Porém se eu der um print_r ele me retorna só o primeiro registro padrão que é o nome do Scritp, no caso a URL.

 

É possível passar esses parâmetros na linha de comando passando pelo arquivo SH e chegando no meu arquivo.php?

 

Obrigado

 

[-------------------- EDITADO ---------------------]

Resolvido Pessoal :)

 

Solução:

 

Coloquei todo o código PHP direto no arquivo .sh assim:

 

Shell: arquivo.sh

#!/usr/bin/php
<?

require_once('config/constants.php');
require_once(DEFAULT_PATH . '/core/cron/lib/arquivo.class.php');

$conn = mysql_connect(CRON_DB_SERVER, CRON_DB_USER, CRON_DB_PASS) or die("Could not connect to the database");
mysql_select_db(CRON_DB_NAME, $conn) or die("Unable to select database");

echo "[Capture Registers]\n";
echo "====================================================================================\n\n";
echo "Step 3: \nReading directories and creating processes:\n\n";

print_r($argv);

/* Continuação do código aqui... */

?>

 

E Executei assim:

 

./arquivo.sh opcao1

 

Resultado (print_r):

 

array(2) {
 [0]=>
 string(11) "./arquivo.sh"
 [1]=>
 string(6) "opcao1"
}

 

Até +

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.