Эта простая функция сохранит «Nyan Cat 10 часов (оригинал) .mp4» из youtube в папке «Видео»:
video(){
youtube-dl -o "/Users/daniel/Videos/%(title)s.%(ext)s" $1 -f mp4
}
Использование с вашего терминала:
Это также обходной путь, но вам не нужно применять его для каждого приложения.
Запишите это на свой .bashrc, и вы можете использовать эту оболочку с F12 (или выбрать другой ключ), чтобы подавить предупреждения:
# output filter
of() {
if [ -n "$*" ]; then
# write the real command to history without the prefix "of"
history -s "$*"
# catch the command output
errorMsg=$( $* 2>&1 )
# check if the command output contains not a GTK-Warning
if ! $(echo $errorMsg | grep -q 'Gtk-WARNING'); then
echo $errorMsg
fi
fi
}
# write the function "of" before every command if the user presses F12
bind '"\e[24~": "\e[1~ of \e[4~\n"'
Я на самом деле написал инструмент hide-warnings в C, который мне намного проще использовать, чем скрипт, показанный выше. Кроме того, он будет записывать все выходные данные, записанные в stdout по умолчанию (поскольку Gtk и другие предупреждения отправляются на stderr, поэтому он по умолчанию анализирует stderr не stdout).
One большая проблема с вышеприведенным скриптом заключается в том, что он не будет писать ничего на консоль, даже если он не соответствует регулярному выражению, до тех пор, пока не будет выполнено. Это связано с тем, что он сохраняет все данные в переменной, а затем grep эту переменную после выполнения. Это также означает, что он сохранит вывод в этой переменной, возможно, используя большую часть памяти (по крайней мере, вы должны сохранить это во временном файле.) Наконец, из того, что я вижу, grep предотвратит отображение, если какая-либо одна строка соответствует , Возможно, это не совсем то, что вы хотите.
Инструмент может использоваться в простом псевдониме:
alias gvim="hide-warnings gvim"
(Я использую gvim ... Я уверен, что это будет работать с gedit тоже.)
Файл является автономным, никаких зависимостей, отличных от библиотеки C, поэтому вы можете получить копию и легко скомпилировать ее и установить:
gcc hide-warnings.c -o hide-warnings
sudo cp hide-warnings /usr/bin/.
В файле есть еще одна документация, и вы можете использовать --help после компиляции для быстрых документов.