jak zrobić folder z plikami/programami działającymi w terminalu

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
Awatar użytkownika
Spawnm
Sędziwy Jeż
Sędziwy Jeż
Posty: 83
Rejestracja: 30 maja 2009, 18:16
Płeć: Mężczyzna
Wersja Ubuntu: 12.10
Środowisko graficzne: Unity
Architektura: x86
Lokalizacja: Radom
Kontakt:

jak zrobić folder z plikami/programami działającymi w terminalu

Post autor: Spawnm »

Witam,
jak by to powiedzieć ...
mam na kompie php5 , apache2 i mysql,
pliki php składuję w /var/www/jakisFolder/
i teraz pytanie jak zrobić aby w terminalu wpisując np.
myprogram -id 123
wywołał mi się plik myprogram.php z przekazanym getem id=123 ?

dodatkowo jak zrobić aby działało to przy każdym pliku który dodam do tego folderu ?
k-pax26
Piegowaty Guziec
Piegowaty Guziec
Posty: 27
Rejestracja: 02 kwie 2009, 18:03
Płeć: Mężczyzna
Wersja Ubuntu: 9.10
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: jak zrobić folder z plikami/programami działającymi w terminalu

Post autor: k-pax26 »

Nie jestem dobry z basha, ale możesz przerobić to:

Kod: Zaznacz cały

#!/bin/bash

plik=$1
ID=$2

sh "/home/k-pax/Pulpit/fl/$plik" $ID
Utwórz plik i zapisz w /usr/bin. Uruchomisz to: nazwapliku(w usr/bin) [plik_docelowy] [ID] czyli np: uruchom test.php 520. Musisz to tylko przerobić do swoich potrzeb bo to uruchamia pliki sh z katalogu /home/k-pax/Pulpit/fl/.
Awatar użytkownika
Spawnm
Sędziwy Jeż
Sędziwy Jeż
Posty: 83
Rejestracja: 30 maja 2009, 18:16
Płeć: Mężczyzna
Wersja Ubuntu: 12.10
Środowisko graficzne: Unity
Architektura: x86
Lokalizacja: Radom
Kontakt:

Odp: jak zrobić folder z plikami/programami działającymi w terminalu

Post autor: Spawnm »

niestety nie działa :(
w /usr/bin dałem plik ubu z treścią

Kod: Zaznacz cały

#!/bin/bash

plik=$1
ID=$2

sh "/var/www/ubu/$plik" $ID
potem w terminalu
ubu plik.php 555 (plik istnieje)
i dostałem komunikat że polecenie nie odnalezione :/
ikonka pliku jest inna niż ta od pliku sudo , powinienem go jakoś skompilować ?
k-pax26
Piegowaty Guziec
Piegowaty Guziec
Posty: 27
Rejestracja: 02 kwie 2009, 18:03
Płeć: Mężczyzna
Wersja Ubuntu: 9.10
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: jak zrobić folder z plikami/programami działającymi w terminalu

Post autor: k-pax26 »

nie, bez kompilacji. Zapomniałem napisać żebyś nadał mu prawa do wykonywania

Kod: Zaznacz cały

sudo chmod +x /usr/bin/plik
I może zapisz z rozszerzeniem .sh (plik.sh) u mnie bez rozszeżenia nie chce przekazać podanych parametrów (tutaj ID). Dla plików w katalogu (tych php) też nadaj prawo do odczytu i wykonania

Kod: Zaznacz cały

 chmod +rx katalog_z_plikami/*
I pamiętaj, że ten skrypt nie wykona pliku PHP, bo otwiera on skrypty sh
Awatar użytkownika
maciej.strzelecki
Piegowaty Guziec
Piegowaty Guziec
Posty: 14
Rejestracja: 29 lip 2009, 12:46
Płeć: Mężczyzna
Wersja Ubuntu: 11.04
Środowisko graficzne: GNOME
Kontakt:

Odp: jak zrobić folder z plikami/programami działającymi w terminalu

Post autor: maciej.strzelecki »

Jeżeli chcesz, żeby parametry wysyłane były metodą GET, to musisz otworzyć stronę ze swoim skryptem. Można to zrobić za pomocą wgeta.

Utwórz nowy plik w /usr/local/bin, np. myprogram.sh z taką zawartością:

Kod: Zaznacz cały

$!/bin/sh

wget -q -O /dev/null http://localhost/jakisFolder/myprogram.php?id=$1
Później nadaj mu prawa do uruchomienia:

Kod: Zaznacz cały

chmod a+x /usr/local/bin/myprogram.sh
Parametr -q wyłącza wyjście wgeta, a parametr -O odpowiada za zapis wyniku do /dev/null.

Swój program możesz wywoływać z konsoli wpisując po prostu:

Kod: Zaznacz cały

myprogram.sh 123
Awatar użytkownika
Spawnm
Sędziwy Jeż
Sędziwy Jeż
Posty: 83
Rejestracja: 30 maja 2009, 18:16
Płeć: Mężczyzna
Wersja Ubuntu: 12.10
Środowisko graficzne: Unity
Architektura: x86
Lokalizacja: Radom
Kontakt:

Odp: jak zrobić folder z plikami/programami działającymi w terminalu

Post autor: Spawnm »

K-pax26 -> to co napisałeś prawie działa :)
wyskakuje komunikat że nie odnaleziono pliku,
potem treść z pliku php (a jednak się znalazł ;) )
tylko tam gdzie daję echo $_GET['ID']; wyskakuje mi [ID] zamiast cyferek które przesłałem :/ Czemu tak się dzieje ?
Awatar użytkownika
f00sek
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 109
Rejestracja: 18 kwie 2009, 15:54
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86_64
Kontakt:

Odp: jak zrobić folder z plikami/programami działającymi w terminalu

Post autor: f00sek »

Chcesz po prostu wykonać skrypt php z linii poleceń? Do tego służy pakiet php5-cli. I wtedy podajesz jako parametry dowolne dane, a w skrypcie nie korzystasz z tablicy $_GET tylko $_SERVER['args'].

Program uruchamiasz

Kod: Zaznacz cały

php program.php
System.out.println ("Java programmer");
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 85 gości