Выполните команду в оболочке и продолжайте управлять командой, когда Вы закроете сеанс

Хорошей идеей является использование «объектно-реляционного картографа», подобного Idiorm :

$user = ORM::for_table('user')
->where_equal('username', 'j4mie')
->find_one();

$user->first_name = 'Jamie';
$user->save();

$tweets = ORM::for_table('tweet')
    ->select('tweet.*')
    ->join('user', array(
        'user.id', '=', 'tweet.user_id'
    ))
    ->where_equal('user.username', 'j4mie')
    ->find_many();

foreach ($tweets as $tweet) {
    echo $tweet->text;
}

Он не только избавляет вас от SQL-инъекций, но и от синтаксических ошибок! Также поддерживает коллекции моделей с цепочкой методов для фильтрации или применения действий к нескольким результатам сразу и нескольких подключений.

34
задан kikito 20 October 2010 в 13:47
поделиться

8 ответов

nohup, disown, и screen вся польза, но screen является лучшим, потому что в отличие от других двух, screen позволяет Вам разъединяться от удаленного сервера, поддерживать все в рабочем состоянии, и затем снова соединиться позже для наблюдения то, что происходит. С nohup и disown Вы не можете продолжить взаимодействовать.

28
ответ дан Flexo 27 November 2019 в 15:53
поделиться

экран! Это - лучше не бывает. (Да, я знаю, что другие уже предложили его, но настолько хорошо, что целый мир должен присоединиться и предложить его также.)

экран похож, как, ummmm... как использование VNC и т.п. для соединения с GUI destop, но для окон командного процессора. У Вас может быть несколько оболочек "окна", открытые сразу на той же экранной сессии. Можно сделать материал как:

  1. Запускаются, экранный экран "использования сессии - доктор" (привыкните к использованию - доктор)
    • , выполняет некоторые команды в одном нажатии окна
    • CTRL - , C для создания нового окна открывают файл там в энергии
    • нажатие CTRL - , 0 , чтобы вернуться к первому окну и дать некоторую команду на файле, который Вы просто отредактировали
    • CTRL - , 1 , чтобы вернуться к Вашей сессии энергии
    • CTRL - , C для еще одного окна и возможно сделать "sudo - su" (потому что Вам просто, оказывается, нужна полная корневая оболочка)
    • CTRL - , 0 , и запустите фоновый процесс
    • CTRL - , C для создания уже нового окна, "хвост-f" журнал для того фонового процесса
    • CTRL - , d для разъединения экрана тогда CTRL - D для разъединения с сервера
    • Едут в отпуск в течение трех недель
    • Вход в систему к серверу снова и проблеме "экран - доктор" для соединения с существующей экранной сессией
    • регистрирует журнал четвертое окно с CTRL - , 3 (это похоже, Вы там наблюдали все это время)
    • CTRL - , 1 для взятия той сессии энергии снова
    • , я предполагаю, что Вы начинаете получать изображение теперь? =)

Это похоже на волшебство. Я использовал экран для дольше, чем я могу помнить, и я все еще полностью поражен с тем, как чертовски большой это.

РЕДАКТИРОВАНИЕ : Просто хочу упомянуть, что существует теперь также tmux. Очень как [1 122] экран , но имеет некоторые уникальные функции, разделяя окна, являющиеся самым видным.

84
ответ дан Flexo 27 November 2019 в 15:53
поделиться

Попытайтесь использовать Экран GNU. Это позволяет, Вы для имения нескольких оболочек открываетесь сразу. И можно разъединиться от тех, которые выполняют оболочки (т.е. закрыть сеанс со Шпаклевкой), и они будут продолжать делать свою вещь.

10
ответ дан Carlos Rendon 27 November 2019 в 15:53
поделиться

То, что Вы ищете, nohup.

Видят, что Wiki связывается для того, как использовать ее.

9
ответ дан unknownuser 27 November 2019 в 15:53
поделиться

экран является лучшим.

Попытка:

экран выслеживают-dmS "MyTail"-f/var/log/syslog

Эту команду запуска в фоне.

экран Use-r, чтобы перечислить, и или экранировать-r Mytail для ввода сессии.

, Если большему количеству пользователей нужен доступ та же сессия, используйте: экранный-rx MyTail, и оба или больше пользователей совместно используют сессию.

5
ответ дан Lauro Oliveira 27 November 2019 в 15:53
поделиться

Если Вы не можете использовать screen (потому что, например, Ваша сессия SSH программно управляется), можно также использовать daemonize для запущения программы как демон.

4
ответ дан Brian Clapper 27 November 2019 в 15:53
поделиться
./command & disown
1
ответ дан Nick Stinemates 27 November 2019 в 15:53
поделиться

Один из подходящих мне способов - это в .

в работает как cron, но для одноразовой работы. Я использовал его сегодня, чтобы загрузить большой файл, не поддерживая мою сессию.

например:

$ at 23:55
at> wget http://file.to.download.com/bigfile.iso
at> ^D  

Вы передаете в время (в будущем), и это дает вам подсказку. Вы вводите команды, которые хотите запустить в этот момент, и нажимаете ctrl + d. Вы можете выйти из сеанса, и он запустит команды в указанное время.

В Википедии есть дополнительная информация о по адресу .

3
ответ дан 27 November 2019 в 15:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: