Итак, я хочу запустить тест Apache, но пока он работает, мне нужно запустить htop, чтобы увидеть использование памяти и процессора. Как я могу это сделать? Putty (мой ssh-клиент) не позволяет мне вводить команду, пока ab не будет запущен.
Идеи?
Вы можете сделать это так же, как и с локальной оболочкой, используя управление заданиями. Например:
time ssh localhost 'bash -c "sleep 5 & sleep 6 &"'
... 0.00s user 0.01s system 0% cpu 6.187 total
Редактировать:
О, вы просто хотите сделать это из сеанса терминала. Вы просто используете управление заданиями, помещая &
после команды, например: benchmark &
а потом htop
. Это заставляет задание работать в фоновом режиме. Затем вы можете увидеть, какие задания выполняются с jobs
команду и верните ее на передний план с помощью fg %1
где 1 - номер работы.
Иногда, особенно для вещей, выполнение которых требует времени, может быть лучше просто открыть два сеанса SSH. Когда окна расположены рядом, можно легко следить за происходящим. Я часто делаю это, когда просматриваю файлы журналов во время тестирования.
GNU Screen - отличное приложение для запуска нескольких процессов (окон) внутри одного сеанса SSH. Он должен находиться на машине, к которой вы подключились (сервер).
Есть много решений (запустить тест в фоновом режиме), но лучшим решением является использование экрана. Это "оконный менеджер" для консоли. Вы можете создавать множество окон, переключаться между ними и даже отключать текущий сеанс. Это очень мощный инструмент.