Как записать вывод команды top в файл в linux?
Я хочу записать вывод определенной «вершины» команда в файл. Я немного погуглил и выяснил, что это можно сделать с помощью следующей команды.
top -n 10 -b > top-output.txt
где -n указывает количество итераций, а -b для пакетного режима. Это работает очень хорошо, если позволить top для 10 итераций. Но если я прерву выполнение команды с помощью Ctrl-C, выходной файл окажется пустым.
Я не буду знать количество итераций перед этим, поэтому мне нужно разбить его вручную. Как я могу захватить вывод top в файл без указания итераций?
Команда, которую я пытаюсь использовать точно,
top -b | grep init > top-output.txt
и сломаю его, когда захочу. Но это не работает.
РЕДАКТИРОВАТЬ: Чтобы дать больше контекста к вопросу, у меня есть Java-код, который вызывает инструмент с входным файлом. Как в инструменте принимает файл в качестве входных данных и работает в течение некоторого времени, затем принимает следующий файл и так далее. У меня есть набор из 100 000 файлов, которые необходимо подать в инструмент. Так что теперь я пытаюсь контролировать этот конкретный инструмент (он работает как процесс в Linux). Я не могу захватить весь "топ" Данные в виде файла слишком велики с нежелательными данными. Как получить системную статистику только этого процесса и записать ее в файл, используя top?