Перенаправление ошибок в / dev / null при поиске и поиске в Solaris

Мне приходится экспериментировать с Solaris. Я обычно перенаправляю с помощью 2> / dev / null , который работает в Solaris в целом, но не с этими двумя способами выполнения рекурсивных "greps" в Solaris.

# no errors, but doesn't actually redirect "permission denieds" to /dev/null
/usr/sfw/bin/ggrep -rni test / 2>/dev/null

# errors
find / -type f -exec grep test {} + 2>/dev/null
find: bad option 2
find: [-H | -L] path-list predicate-list 

Может ли кто-нибудь пролить свет на это?

-1
27.02.2017, 01:13
1 ответ

2> / dev / null работает в Solaris, как и любой другой вариант Unix. Это особенность оболочки (перенаправление вывода ошибок с помощью 2> ) плюс функция, которая существует для всего, что даже отдаленно напоминает Unix ( / dev / null как универсальный поглотитель).

Описанное вами поведение показывает, что вы используете оболочку, в которой 2> не является оператором перенаправления. Предположительно, вы используете csh. Решение - не использовать csh . Csh была лучшей интерактивной оболочкой 80-х, но сейчас уже не 80-е. Нет причин использовать csh в Solaris больше, чем в любом другом варианте Unix. Используйте ksh или, если вы хотите более удобную работу с командной строкой, zsh или bash.

3
28.01.2020, 05:07

Теги

Похожие вопросы