Чтобы добиться желаемого вывода в утилите `top`, вы можете использовать несколько подходов. Посмотрим парочку возможных решений.
### 1. Использование `htop`
`htop` — это более мощная и гибкая альтернатива утилите `top`. Она позволяет настраивать вывод и имеет возможность отображать более специфическую информацию.
Чтобы установить `htop`, используйте пакетный менеджер вашей системы:
- На Debian/Ubuntu:
```bash
sudo apt install htop
```
- На CentOS/RHEL:
```bash
sudo yum install htop
```
- На Fedora:
```bash
sudo dnf install htop
```
После установки запустите `htop`:
```bash
htop
```
В `htop` вы можете настроить колонки, нажав `F2` (настройки), затем выберите `Columns`, и добавьте `COMMAND`. Однако `htop` не позволяет фильтровать команды напрямую, как это требуется в вашем случае.
### 2. Использование `ps` с фильтрацией
Так как `top` и `htop` не позволяют непосредственно изменять вывод команд, можно использовать комбинацию команды `ps` и `grep` для фильтрации процессов на лету.
Пример команды, которая покажет все процессы `gcc` и соответствующие файлы:
```bash
ps -eo pid,comm,args | grep 'gcc'
```
Вы можете адаптировать формат вывода, чтобы оставить только нужные вам части:
```bash
ps -eo pid,comm,args | grep 'gcc' | awk '{print $1, $2, $(NF)}'
```
### 3. Использование `watch`
Если вам нужно перманентно отслеживать `gcc` процессы, вы можете использовать `watch` вместе с командой `ps`:
```bash
watch "ps -eo pid,comm,args | grep 'gcc' | awk '{print \$1, \$2, \$(NF)}'"
```
### 4. Создание обертки для `gcc`
Если вы хотите, чтобы вы видели файл, который компилируется напрямую в `top`, можно создать обертку для `gcc`, которая будет добавлять дополнительную информацию в командной строке.
Создайте скрипт `gcc_wrapper.sh`:
```bash
#!/bin/bash
./gcc "$@" | sed -n 's/.* -o \([^.]*\)\..*/gcc \1.o/p'
exec /usr/bin/gcc "$@"
```
Не забудьте сделать скрипт исполняемым:
```bash
chmod +x gcc_wrapper.sh
```
Теперь используйте `gcc_wrapper.sh` вместо `gcc` в ваших сборках.
### Заключение
Хотя утилита `top` не позволяет непосредственно модифицировать вывод под ваши нужды, вы можете использовать `ps` и `grep` для достижения цели. Также рассмотрите возможность использования `htop` для удобного мониторинга процессов с более гибкими настройками.