Re: Нужен ли bash
Artem Chuprina wrote:
> Serhiy Storchaka -> debian-russian@lists.debian.org @ Thu, 25 Sep 2008
> 10:34:12 +0300:
> >> P.S. В sed-е FreeBSD опция -i таки. Это во-первых. Во-вторых, -i нет
> >> в стандарте, и, стало быть, идет он лесом лесом, полем полем. На мой
> >> взгляд, совершенно бесполезная и ненужная вещь, идущая вразрез со
> >> всеми остальными ютилами юникса.
>
> SS> Гораздо полезнее была бы допустим утилита inplace, берущая имя
> SS> файла, скармливающая содержание на вход программе или даже
> SS> конвейеру и записывающая назад результат.
>
> Беда в том, что в модель использования шелла такая утилита не ложится.
> Потому что пайп организуется шеллом. А делать ее на одну команду -
> очень обгрызенная функциональность получается. Именно поэтому у sed
> ключ -i не шибко полезен. В отличие от перла, на котором программа той
> же функциональности, если эта функциональность не тривиальна, как
> правило, на порядок короче.
Поэтому лучше было бы это сделать встроенной возможностью шелла, как и
пайпы. «Заворачивание» конвейера в исходный файл, без перезаписи. Ведь не
так уж и редко такая возможность нужна — и многие утилиты, работающие как
фильтры (sed, dos2unix и т.п.), вынуждены реализовывать обработку частного
случая модификации файла сами. Кстати, чаще всего всё же речь идёт о одной
программе (в крайнем случае несколько можно натравить на тот же файл
последовательно).
Пожалуй я всё же запишу inplace.sh себе в ~/bin.
Reply to: