6

Я новичок в Linux. Я использую Ubuntu 11.04. Всякий раз, когда я открываю файл с помощью kate из командной строки, с помощью 'kate &' (или без амперсанда), Kate начинает давать сообщения на консоли. Он постоянно выдает их, когда я сохраняю файл или закрываю его. Они выглядят как отладочные сообщения для меня (пример ниже). Я использовал менеджер пакетов Synaptic для установки Kate. Удаление и установка версии dev не произвели никаких изменений. Вскоре моя консоль становится загроможденной. Есть ли способ подавить эти сообщения? В настройках Кейт тоже ничего не было.

Спасибо,

Сообщения выглядят как

kate(13412)/kate-filetree KateFileTreeModel::handleInsert: BEGIN!
kate(13412)/kate-filetree KateFileTreeModel::handleInsert: creating a new root
kate(13412)/kate-filetree ProxyItem::ProxyItem: ProxyItem(0x1796840,0x0,-1,QObject(0x0)
....
kate(13435)/kate-filetree KateFileTreeModel::documentActivated: adding viewHistory ProxyItem(0x1eb7cf0,0x1eb6830,0,KateDocument(0x1d93ea0) , "Untitled" )
kate(13435)/kate-filetree KateFileTreeModel::updateBackgrounds: BEGIN!
kate(13435)/kate-filetree KateFileTreeModel::updateBackgrounds: END!
kate(13435)/kate-filetree KateFileTreeModel::documentActivated: END!
kate(13435)/kate-filetree KateFileTreePluginView::viewChanged: END!
X Error: BadWindow (invalid Window parameter) 3
  Major opcode: 20 (X_GetProperty)
  Resource id:  0x5601b42
X Error: BadWindow (invalid Window parameter) 3
  Major opcode: 20 (X_GetProperty)
  Resource id:  0x5601b42

2 ответа2

12

Этот пост на форуме KDE объясняет, что он делает и как его остановить.

http://forum.kde.org/viewtopic.php?f=22&t=93955

Потому что вы не отключили отладочные сообщения.

Откройте "kdebugdialog", найдите "kate" и снимите все флажки. Теперь Кейт больше не будет с тобой разговаривать.

1

Сообщения отладки обычно пишутся со стандартной ошибкой, которая является дескриптором файла, обозначенным в консоли как 2. Вы можете перенаправить это, не влияя на вывод стандартного вывода (дескриптор файла 1), запустив ваше приложение следующим образом

kate 2>/dev/null

Вы также можете добавить & если хотите.

Число 2 здесь представляет дескриптор файла 2, > - оператор перенаправления в оболочке, /dev/null - устройство "черной дыры" - оно съедает все, что ему записано, поэтому оно "исчезает" (не появляется в консоли).

Вы можете записать стандартный вывод ошибок, заменив /dev/null именем файла. В этом случае вывод идет в файл, а не в консоль.

Если приложение записывает сообщения отладки на стандартный вывод, вы можете заменить число 2 номером 1 (см. Выше) - обратите внимание, что в этом случае обычные сообщения также будут перенаправлены.

Вы можете перенаправить как стандартный вывод, так и ошибку одновременно, самый простой способ сделать это

kate 2>&1 1>/dev/null

Здесь &1 обозначает дескриптор файла 1, куда следует перенаправить стандартную ошибку. Использование & это отличить его от файла с именем 1.

Для получения дополнительной информации о перенаправлении, прочитайте руководство по вашей оболочке (например, bash)

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