Дикий пионер: В общем и целом отличие live от click в том, что live будет работать и на элементах, которые были на странице в момент его вызова и на тех, что будут вставлены в DOM после его вызова.
Чтобы сохранить подобную функциональность вам по идее надо заменить live на
.on("document","a",function(){}); иначе у вас могут перестать работать клики на ссылках в подгруженном контенте.
Решение для Ubuntu 15.10 (думаю в 15.04 и выше работает тоже):
Не забываем менять user на свой
Создадим новый файл, я назвал его finish-yandex, с таким содержанием:
Немного о файле
[spoiler]Unit - общая информация.
Description - описание сервиса.
After - задаёт порядок загрузки. В моём случае после старта сессии пользователя.
Service - содержит информацию о службе
ExecStop - Выполняет команду при остановке сервиса.
Type - Типы службы. oneshot полезен для скриптов, которые выполняют одно задание и завершаются
Install - когда юнит должен быть активирован[/spoiler]
finish-yandex.sh для теста содержит:
Делаем файл finish-yandex исполняемым:
Копируем файл в /etc/systemd/system с расширением *.service:
Перезагружаем systemd для поиска новых или измененных юнитов:
Включаем юнит в автозапуск при загрузке системы:
Перезагружаемся и проверяем. У меня все заработало, файл test.log появился после перезагрузки.
Что бы проверить для начало без перезагрузки, можно запустить и остановить юнит:
Для отключения юнита из автозапуск при загрузке системы:
Полезная ссылка о systemd - тык.
В первом посте решение скорей всего подойдет для Ubuntu 14.10 и ниже
А руками не пробовали запустить?
Перенаправление >> не создаёт файл, лишь дописывает в существующий.
Проблема не в этом, скрипт из консоли отрабатывает, если нет файла то он его создает.
Мне нужно что бы скрипт выполнялся при выключении или перезагрузке.
ps: Почти сделал...
А не проще добавить в крон?
@reboot /etc/init.d/finish-yandex.sh
Не знал.
Можно уточню, то есть если я нажму перезагрузку, то он сначала выполнит скрип, а потом уже перезагрузиться?
ps: Это не сервер..
Добавьте в /etc/rc.local. В современных системах и другие системы инициализации могут быть :)
P.S. Сорри, вам при выключении надо, не подходит.
и при перезагрузке =)
---------- Добавлено 31.01.2016 в 18:36 ----------
BugReport:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=718232
А по теме вот тут все подробно http://tuksik.ru/auto-start-and-shutdown/
Я уже тут был http://tuksik.ru/auto-start-and-shutdown/, сделал примерно то же самое. Но мне тут подсказали, что
"Ubuntu имеет смешанную систему инициализации. В Ubuntu 14.10 и ниже - sysv и upstart, в Ubuntu 15.04 - upstart и systemd." тык.
---------- Добавлено 31.01.2016 в 18:58 ----------
baas, В документации cron пишут что
@reboot Запуск при загрузке
То есть мне это не подходит получается...
Пробую делать на phantomjs...
Ваш сайт, или чужой?
Сайт чужой.
Получать данные куда?
Отправлять на обработку php скрипту.
Пробовал реализовать через fsockopen:
Пример на тестовом сайте
$fp = fsockopen("multeor.com", 80, $errno, $errstr, 30);if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {
$out = "GET / HTTP/1.1\r\n";
$out .= "Host: multeor.com\r\n";
$out .= "Connection: Close\r\n\r\n";
fwrite($fp, $out);
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclose($fp);
}
В результате js скрипт не грузятся...
Вопрос на будущие, а можно к websocket подключиться и отправлять данные на обработку как только они поступают?
Замените:
$('a').live("click", function()
на
$('a').on("click", function()
Так и сделал =)
В общем и целом отличие live от click в том, что live будет работать и на элементах, которые были на странице в момент его вызова и на тех, что будут вставлены в DOM после его вызова.
Чтобы сохранить подобную функциональность вам по идее надо заменить live на
.on("document","a",function(){}); иначе у вас могут перестать работать клики на ссылках в подгруженном контенте.
Теперь понятно, заменил на .on(), спасибо.
В консоли ошибки есть?
---------- Добавлено 08.08.2015 в 15:17 ----------
У вас в 2 строке вызов .live() судя по http://api.jquery.com/live/ от этого метода отказались в версии 1.9. Ну и в доке вот что советуют:
---------- Добавлено 08.08.2015 в 15:19 ----------
Так же попробуйте заменить $ на jQuery везде в скрипте
Да в консоли ошибки появились, заменил на live на delegate и вот что получил в консоли если интересно:
Но в принципе у меня все заработало, заменил live на click. Но где-то на днях прочитал, что
click не рекомендуется использовать, а почему не было написано. Вот и не знаю теперь, правильно ли так как я сделал или нет...
Спасибо, подтолкнул в правильном направление :)
zexis, хорошо, сейчас займусь этим.
http://www.linuxatemyram.ru/
не хотите, чтобы свопалась - используйте vm.swappiness=0
Окей, спасибо, сейчас буду экспериментировать.