сделал открытие - когда папка с программой на рабочем столе находится - скрипты не выполняются. Другой вопрос - почему не выполняются ссылки на скрипты?
Помогите разобраться.
Нашел скрипт для USSD запросов 3g модема. Сохранил, сделал исполняемым, при попитке запустить консоль выдает следующее:
den@HPnout:~$ ls
ussd.sh ussd.sh~ Видео Документы Загрузки Картинки Музыка Общедоступные Рабочий стол Шаблоны
den@HPnout:~$ sudo ./ussd.sh
./ussd.sh: 2: cannot open ?php: No such file
./ussd.sh: 4: Syntax error: "(" unexpected
den@HPnout:~$
Что я делаю неправильно?
Так, не знаю как всем остальным, но мне уже не хочется разжевывать, и класть в рот готовенькое.
Данному товарищу, как минимум.
Очень плохо, что нет, и ты так и не додумался хотя бы подумать.
Да и почитать и ПОНЯТЬ, о чем тебе говорят, ты тоже ЯВНО не захотел.
Пост ниже об этом открыто говорит.
переделал расширение на php теперь так: den@HPnout:~$ php ussd.php *121*
Number of service: *121* PHP Warning: fopen(/dev/ttyUSB0): failed to open stream: Device or resource busy in /home/den/ussd.php on line 44 PHP Notice: Uninitialized string offset: 5 in /home/den/ussd.php on line 29 PHP Warning: fputs() expects parameter 1 to be resource, boolean given in /home/den/ussd.php on line 45 PHP Warning: fgets() expects parameter 1 to be resource, boolean given in /home/den/ussd.php on line 47 PHP Warning: fclose() expects parameter 1 to be resource, boolean given in /home/den/ussd.php on line 59 den@HPnout:~$ php ussd.php
И кто разрешал простому пользователю открывать файл-устройство для чтения/записи "/dev/ttyUSB0"? (тем более в php) Остальные ошибки идут от этой глупости... Решение: "либо от рута", либо добавить себя в нужную группу обычно это dip.
в правах файла сделай его исполняемым
Делал - все равно не открывается, как программа
сделал открытие - когда папка с программой на рабочем столе находится - скрипты не выполняются. Другой вопрос - почему не выполняются ссылки на скрипты?
В свойствах-правах все скрипты помечены, как иполняемые, в том-то итрабла. Может, это глюк KDE?
Помогите разобраться.
Нашел скрипт для USSD запросов 3g модема. Сохранил, сделал исполняемым, при попитке запустить консоль выдает следующее:
den@HPnout:~$ ls
ussd.sh ussd.sh~ Видео Документы Загрузки Картинки Музыка Общедоступные Рабочий стол Шаблоны
den@HPnout:~$ sudo ./ussd.sh
./ussd.sh: 2: cannot open ?php: No such file
./ussd.sh: 4: Syntax error: "(" unexpected
den@HPnout:~$
Что я делаю неправильно?
Сам скрипт покажи. А там посмотрим.
/телепат моде он/ исходя из такого заявления
./ussd.sh: 2: cannot open ?php: No such file
./ussd.sh: 4: Syntax error: "(" unexpected
можн сделать вывод что скрипт нужно запускать по другому
например sudo /usr/bin/php usssd.sh
/телепат моде офф/
Ну во всяком случае мне так кажется. :-)
<?php
function decodePDU($in) {
$b = 0; $d = 0;
$out = "";
foreach (str_split($in, 2) as $ss) {
$byte = hexdec($ss);
$c = (($byte & ((1 << 7-$d)-1)) << $d) | $b;
$b = $byte >> (7-$d);
$out .= chr($c);
$d++;
if ($d == 7) {
$out .= chr($b);
$d = 0; $b = 0;
}
}
return $out;
}
function encodePDU($in) {
$out = "";
for ($i = 0; $i < strlen($in); $i++) {
$t = $i%8+1;
if ($t == 8)
continue;
$c = ord($in[$i])>>($i%8);
$oc = $c;
$b = ord($in[$i+1]) & ((1 << $t)-1);
$c = ($b << (8-$t)) | $c;
$out .= strtoupper(str_pad(dechex($c), 2, '0', STR_PAD_LEFT));
}
return $out;
}
if (!isset($argv) || !$argv[1]){
die("Neet number of service. Sample: <script>.php *111#\n");
}
$number = $argv[1];
print "Number of service: $number \n";
$f = fopen ("/dev/ttyUSB2", "rw+");
fputs($f, "AT+CUSD=1,".encodePDU($number).",15\r\n");
while ($s = fgets($f)) {
if (substr($s, 0, 5) == "+CUSD") {
$s = decodePDU(substr(trim($s), 10, -3));
echo $s."\n";
if (strpos($s, "1 - Dalee") !== false) {
fputs($f, "AT+CUSD=1,".encodePDU("1").",15\r\n");
}
else
break;
}
}
fclose($f);
?>
Так ептить, убери первую и последнюю строчки!))
Убирать нельзя, это ж пэхопэ-быдлокодерский-быдлоскрипт. Я знал, что надо было отписаться, пока чего похуже не насоветовали, но увы...
Блин, я конечно ступил)) На код не посмотрел, только на строчку запуска...
Убрал.
теперь просто:
den@HPnout:~$ sudo ./ussd.sh
./ussd.sh: 4: Syntax error: "(" unexpected
den@HPnout:~$
Попробуй
if [ -z "`aptitude search ~iphp`" ]; then sudo apt-get install php5; fi; if [ "$?" -eq "0" ]; then sudo `which php` $HOME/usssd.sh; fi
после установки пакетов так:
den@HPnout:~$ sudo ./ussd.sh
sudo: ./ussd.sh: command not found
Скажи пожалуйста, для кого я написал что запуск должен происходить с использованием php?
вот здесь для кого я писал?
нет такого файла
Так, не знаю как всем остальным, но мне уже не хочется разжевывать, и класть в рот готовенькое.
Данному товарищу, как минимум.
Очень плохо, что нет, и ты так и не додумался хотя бы подумать.
Да и почитать и ПОНЯТЬ, о чем тебе говорят, ты тоже ЯВНО не захотел.
Пост ниже об этом открыто говорит.
переделал расширение на php теперь так:
den@HPnout:~$ php ussd.php *121*
Number of service: *121*
PHP Warning: fopen(/dev/ttyUSB0): failed to open stream: Device or resource busy in /home/den/ussd.php on line 44
PHP Notice: Uninitialized string offset: 5 in /home/den/ussd.php on line 29
PHP Warning: fputs() expects parameter 1 to be resource, boolean given in /home/den/ussd.php on line 45
PHP Warning: fgets() expects parameter 1 to be resource, boolean given in /home/den/ussd.php on line 47
PHP Warning: fclose() expects parameter 1 to be resource, boolean given in /home/den/ussd.php on line 59
den@HPnout:~$ php ussd.php
И кто разрешал простому пользователю открывать файл-устройство для чтения/записи "/dev/ttyUSB0"? (тем более в php) Остальные ошибки идут от этой глупости... Решение: "либо от рута", либо добавить себя в нужную группу обычно это dip.
Отправить комментарий