터미널에서 실행할 때 Evince 경고가 많이 나타납니다. 예:
(evince:4599): GVFS-WARNING **: can't init metadata tree /home/nivaca/.local/share/gvfs-metadata/home: open: Permission denied
(evince:4599): GVFS-WARNING **: can't init metadata tree /home/nivaca/.local/share/gvfs-metadata/home: open: Permission denied
** (evince:4599): WARNING **: Error setting file metadata: can't open metadata tree
(evince:5001): Gtk-CRITICAL **: gtk_widget_show: assertion 'GTK_IS_WIDGET (widget)' failed
이 문제를 해결하는 방법을 여기저기서 찾아보았으나 해결되지 않았습니다.
그러므로 내가 지금 원하는 것은고요이러한 경고는 터미널의 다른 프로세스에서 실제로 무슨 일이 일어나고 있는지 볼 수 없기 때문입니다.
이를 수행할 수 있는 방법이 있습니까?
답변1
이 조치를 반드시 권장하지는 않지만 다음과 같이 입력할 수 있습니다.
alias evince='evince 2>/dev/null'
그러면 evince에서 모든 표준 오류가 제거됩니다. 나는 그것들을 보는 사소한 성가심이 일회성 증거가 실제로 실패하고 이유를 말하지 않을 것보다 낫다고 생각하지만 그것은 선택 사항입니다.
bash를 사용하면 다음과 같이 더 멋진 작업을 수행할 수도 있습니다.
alias evince='evince 2> >( grep -v "evince.*WARNING" >&2 )'
표준 오류에서 특정 줄을 필터링합니다. 이것이 더 안전할 수도 있지만 반드시 지지하지는 않습니다.