Я хочу записать вывод определенной "верхней" команды в файл. Я немного погуглил и выяснил, что это можно сделать с помощью следующей команды.
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?