1

В частности, я пытаюсь запустить следующую команду на CentOS и Fedora14 (та же проблема с обоими)

watch sudo jmap -heap 31945

Однако есть несколько строк стандартной ошибки, которые портят вывод после того, как jmap вызывается более одного раза:

Attaching to process ID 31945, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 14.2-b01

Эти строки удаляются, если я запускаю:

sudo jmap -heap 31945 2> /dev/null

Однако, если я попытаюсь:

watch sudo jmap -heap 31945 2> /dev/null

затем удаляется слишком много строк (удаляется много строк фактического вывода).

Почему это происходит? Есть ли способ это исправить?

1 ответ1

3

Что вы хотите сделать, это сказать watch что выполняемая команда должна перенаправить свой вывод; вместо этого вы перенаправили вывод с самих watch .

Попробуйте это: watch 'sudo jmap -heap 31945 2> /dev/null'

Обратите внимание на новые кавычки - это говорит watch , что вся эта вещь - команда, а не просто часть sudo jmap -heap 31945 , и, таким образом, watch по-прежнему способен использовать саму стандартную ошибку (которая, как я подозреваю, является причиной вашей "потери"). "строки вывода).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .