Portál AbcLinuxu, 10. května 2025 05:40

Dotaz: BASH+PHP

25.7.2010 14:01 f1lo | skóre: 16
BASH+PHP
Přečteno: 418×
Odpovědět | Admin
NASTAVIT CLEAN NOVÉHO TISK UŽIVATELE NA PÁTEK 20:00 Dobrý den, Narazil jsem na diskusi (http://www.abclinuxu.cz/poradna/unix/show/266558), kde se řeší konkrétně můj případ a to BASH + PHP v jednom souboru, ovšem nejspíše jsem to z uvedeného příspěvku špatně pochopil, jelikož následující kód mi nefunguje - konkrétně PHP se vůbec neprovede: test.sh:
#!/bin/sh

source /etc/cron.d/configs/temperatures
if [ "$cpuTemperature" -ge "$cpuTemperatureMax" ];
then

/usr/bin/php <<'KONEC'
<'?'php
require_once('./config.php');
echo "Start";
mysql_query(...)
...
'?'>
KONEC
fi


JEDNODUCHÝ MODEL (pro vystvětlení, kdybyste to z příkladu nepochopili)
BASH PODMÍNKA (POKUD SE SPLNÍ, POKRAČUJE SE V PROVÁDĚNÍ PHP SKRIPTU)
PHP SKRIPT
UKONČENÍ BASH PODMÍNKY

Otazníky u php jsem musel ohraničit ' protože mi to psalo, že tu znak ? není povolen :-).

Řešení dotazu:


Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

25.7.2010 14:03 f1lo | skóre: 16
Rozbalit Rozbalit vše Re: BASH+PHP
Odpovědět | | Sbalit | Link | Blokovat | Admin
Omlouvám se ta věta velkým písmem sem nepatří, to se mi tam omylem připletlo při CTRL+CV :-)
wamba avatar 25.7.2010 17:03 wamba | skóre: 38 | blog: wamba
Rozbalit Rozbalit vše Re: BASH+PHP
Odpovědět | | Sbalit | Link | Blokovat | Admin

No mně tohle funguje:

#!/usr/bin/bash
echo 'bash';
/usr/bin/php <<'EOF'
  <?php
    echo "start";
  ?>
EOF
This would have been so hard to fix when you don't know that there is in fact an easy fix.
25.7.2010 18:00 f1lo | skóre: 16
Rozbalit Rozbalit vše Re: BASH+PHP
Pokud tam místo te podmínky:

if [ "$cpuTemperature" -ge "$cpuTemperatureMax" ]; then

použiji nějaký echo "test"
tak mi to také běží, problém je nejspíše v té podmínce a jejím zakončení, protože ji používám v jiných (jen bashovských skriptech) a tam běží v pohodě.
26.7.2010 11:16 Ivo
Rozbalit Rozbalit vše Re: BASH+PHP
Odpovědět | | Sbalit | Link | Blokovat | Admin

Ja len taku radu. ide to aj jednoduchsie ked chces spustat php ako script

-------------
#!/usr/bin/php -q
<?

... PHP kod ...

?>
--------------

Na root.cz je o tom super clanok.

26.7.2010 19:22 f1lo | skóre: 16
Rozbalit Rozbalit vše Re: BASH+PHP
Ovšem to není řešení pro můj dotaz? Nebo jsem to jen špatně pochopil? Ale nemyslím si, že tohle zajistí funkčnost bash (konkrétně co chci z bashe použít, máte o příspěvek výše) + php v jednom souboru.

Zkoušel jsem najít na rootu Vámi zmiňovaný článek, nejspíše se jedná o: http://www.root.cz/clanky/php-a-skriptovani-v-shellu/
27.7.2010 12:58 Messa | skóre: 39 | blog: Messa
Rozbalit Rozbalit vše Re: BASH+PHP
Odpovědět | | Sbalit | Link | Blokovat | Admin
Proč to neudělat rovnou celé v PHP? Ten podmínky umí taky :-)
27.7.2010 13:20 Messa | skóre: 39 | blog: Messa
Rozbalit Rozbalit vše Re: BASH+PHP
Pardon, nevšiml jsem si toho source. Ale stejně, kdyby to šlo celé jen v PHP, možná by to bylo lepší.
27.7.2010 21:09 f1lo | skóre: 16
Rozbalit Rozbalit vše Re: BASH+PHP
Děkuji, nakonec jsem to tedy všem vyřešil v PHP, otevřel jsem daný soubor, přečetl jeho obsah a pomocí regexp jsem si zjistil potřebnou hodnotu, děkuji všem ;-).

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.