pracuję na Windows XP. mogę pomyślnie uruchomić polecenie system() przez moją przeglądarkę, wywołując skrypt TCL, który automatyzuje sesję ssh. Zwracam także wartość ze skryptu. jednak moim problemem jest to, że skrypt zrzuca całą sesję ssh w przeglądarce.jak ukryć wyjście systemowe()
mój skrypt php wygląda następująco:
$ lastline = System (' "C: \ tcl \ bin \ tclsh.exe" \ ścieżka do pliku \ filename.tcl' $ login „”... $ pass, $ val);
filename.tcl:
tarło Plink -ssh $ user @ $ host
oczekiwać "assword:"
wyślij "$ wprost \ r"
oczekiwać „\ wiersz:/- >”
zestaw $ Return_Value [ciąg porównać /..string../ $ expect_out (bufor)]
/...some kod ... to działa dobrze/
exit $ Return_Value
wszystko działa dobrze, a ja dostać $ Return_Value powrotem poprawnie, ale drukuje plik PHP wyniku realizacji całej sesji ssh w przeglądarce, która wygląda następująco:
Korzystanie login „admin”. [email protected]'s hasło: ===/* * jakiś tekst/=== \ monit:/-> .../jakiś tekst/
chcę zapobiec system() funkcja z drukowania tego w mojej przeglądarce
użyłem funkcji shell_exec(), ale zwraca ona cały wynik sesji ssh (którą przeanalizowałem w skrypcie tcl i otrzymałem dokładną wartość, aby powrócić do skryptu php). czy jest sposób mogę to zrobić bez użycia shell_exec(), ale przy użyciu systemu() zamiast
góry dzięki
dzięki csl ... działa ... wcześniej używałam funkcji ob_start() i ob_end_clean() przed i po poleceniu system() do uzyskania pożądanego wyniki ... dzięki za wejście .... – user806168