bash Cookbook / bash: Сборник рецептов: Useless Use of cat / Бесполезное использование команды cat
| Английский оригинал | Перевод на русский | |
|---|---|---|
Сожалеем, но текст оригинала доступен только зарегистрированным пользователям. |
Некоторые пользователи Unix находят удовольствие в указании недостатков в коде других людей. В основном это конструктивная критика, подаваемая мягко и принимаемая с благодарностью. pif 06.02.09 в 08:26 Некоторым пользователям Unix нравится указывать на недостатки в коде других людей. В основном это конструктивная критика, подаваемая мягко и принимаемая с благодарностью. tehhi 30.04.09 в 16:30 |
|
|
Пожалуй самый распространенный случай - так называемая "Награда за бесполезное использование cat", присуждаемая кому-либо, кто пишет что-то вроде cat file | grep foo, вместо простого grep foo file. В этом случае cat не нужен, а также он вызывает излишнюю трату системных ресурсов, в следствии того, что запускается в подоболочке (subshell). Другой частый случай - использование cat file | tr '[A-Z]' '[a-z]' вместо tr '[A-Z]' '[a-z]' < file. Иногда использование cat может вызвать ошибку в вашем скрипте (смотрите Секцию 19.8, "Забудьте о конвейерах, используйте подоболочки"). bbrodriges 25.12.08 в 11:59 |
||
|
Но ... (Вы знали, что есть какой то подвох, не так ли?) иногда излишне использование cat действительно служит цели. Она (команда) может быть заполнителем конвеера, демонстрирующим сам конвеер или его фрагмент, с другими командами которые заменят её (возможно, даже cat-N). stillru 02.07.09 в 17:02 |
||
|
Пока мы одобряем эффективность и соглашаемся, что это цель, к которой стоит стремиться, это не критично, как было раньше. Мы не поощряем беспечность и раздувание кода, просто процессоры не станут от этого медленнее. Так что если вам нравиться команда cat, то используйте ее. bbrodriges 25.12.08 в 12:07 |
