1 / 1 / 1
Регистрация: 23.04.2014
Сообщений: 637
1

как записать результат выполнения консольной команды в массив

07.05.2017, 16:46. Показов 933. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте , есть консольная команда , которую я планирую прикрутить к крону.
Мне необходимо отпарсить результат её выполнения , что-то вроде такого:
200 34.99.21.3
100 18.32.1.4

Но для этого надо записать строку в массив , потом в цикле надо просмотреть количество обращений если оно больше 300 скажем то
этот ip адрес нужно записать в файл.

Использую функцию shell_exec() , она возвращает строку.Как записать содержимое строк в массив , пробовал
через explode с двумя пробелами , не получилось.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.05.2017, 16:46
Ответы с готовыми решениями:

Как записать результат выполнения команды telnet в файл?
Добрый день, подскажите как записать результат команды telnet <имя удаленного сервера> <порт> в...

Как вывести результат консольной команды
Здравствуйте. Localhost.Ubuntu12.04.Нужно резать видео на превью. Поставил ffmpeg.Выполняю avconv...

Как результат выполнения команды CD поместить в переменную?
как результат команды cd поместить в переменную? :umnik:

Записать в массив результат выполнения функции в цикле
смысл таков: есть исходный массив из строк $valueOfCode = array...

3
313 / 312 / 221
Регистрация: 11.07.2015
Сообщений: 1,107
10.05.2017, 00:10 2
PHP
1
2
3
4
5
6
<?php
$string = '200 34.99.21.3
100 18.32.1.4';
preg_match_all('/([\d])+[\s]+([\d\.])+[\s]/ismU',$string.' ',$m);
var_dump($m);
?>
1
1 / 1 / 1
Регистрация: 23.04.2014
Сообщений: 637
10.05.2017, 10:54  [ТС] 3
plohoyav, зы совсем не так, надо чтобы количество обращений было в отдельном столбце ,а ip адреса в другом.
Ваш пример я честно говоря не понял , так откуда-то появились ещё два столбца ,в одном первая цифра
обращений с ip, а во втором последняя цифра ip адреса.

Добавлено через 2 минуты
plohoyav, вобще мне понравился вот такой вариант

PHP
1
$access=preg_split("/[\s,]+/",$string);
Но в один столбец неудобно.
0
313 / 312 / 221
Регистрация: 11.07.2015
Сообщений: 1,107
10.05.2017, 15:13 4
PHP
1
2
3
4
5
6
7
<?php
$string = '200 34.99.21.3
100 18.32.1.4';
preg_match_all('/([\d]+)\s([\d\.]+)\s/ismU',$string.' ',$m);
unset($m[0]);
var_dump($m);
?>
0
10.05.2017, 15:13
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.05.2017, 15:13
Помогаю со студенческими работами здесь

Вывести результат выполнения команды HELP в текстовый файл так, чтобы у каждой команды был порядковый номер
Всем привет, нужна помощь! Необходимо команду help вывести в текстовый документ, чтобы у каждой...

QProcess не работает write, или как отобразить результат выполнения команды
Здравствуйте, есть код перехвата консоли. void MainWindow::on_pushButton_clicked() { ...

Как записать в массив результат запроса если результат-массив данных а не 1 значение
Здравствуйте , подскажите пож-та как организовать в 2010-ом бэйсике работу с запросами,...

Как записать результат выполнения функции в dataGridViev
Создал в sql базе функцию, которая должна мне возвращать таблицу с выполнением запроса. ALTER...

Как записать результат выполнения программы в txt-файл?
Добрый день, Господа, подскажите пожалуйста как записать результат программы в файл .txt def...

Как записать результат выполнения функции COUNT(*) в переменную типа integer?
Подскажите пожалуйста. Хочу узнать, сколько записей в поле names содержат 'Petr' Выполняю вот...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru