Victor Wagner <vi...@wagner.pp.ru> wrote: > On Tue, 1 Oct 2019 12:48:42 +0300 > "Andrey Jr. Melnikov" <temnota...@gmail.com> wrote:
> > Victor Wagner <vi...@wagner.pp.ru> wrote: > > > On Tue, 1 Oct 2019 11:11:48 +0300 > > > "Andrey Jr. Melnikov" <temnota...@gmail.com> wrote: > > > > > > > > Дак а кто автору злобный буратино, что он не пользует конструкцию > > > > > > > > _pacman=$(command -v pacman) > > > > if [ -n "${_pacman}" -a .... ]; ... > > > > > Ну зачем так сложно? > > Затем, что потом сразу можно вызвать ${_pacman} -- ${file} без > > повторного поиска по дискам в $PATH - а где там тот pacman лежало. > > > > > Ведь command -v возвращает ненулевой код если команда не найдена. > > > Я ведь с самого начала про то и пишу, что НЕ ИСПОЛЬЗУЙТЕ КОМАНДУ > > > test, для того чтобы проверить условие, уже проверенное другое > > > командой. > > > > О, расскажи как мне, как в > > if /usr/bin/неведомафигня ; then > > обработать вот это: > > /usr/bin/неведомафигня: cannot execute binary file: Exec format error > А нам оно в данном случае надо? Надо. Т.к. я знаю, что /usr/bin/неведомафигня должна сделать или exit(0) или exit(1). А в противном случае - надо громко обругаться и упасть прямо тут, а не считать, что у нас был вариант exit(1). > Бывают такие ошибки которые НЕ НАДО обрабатывать. Ежели юзер сумел > загнать свою систему в такое состояние, он сам себе злобный Билл Гейтс. Да? и флешки не глючат? и с дисков читается всё всегда и так-как-записали? пришибло OOM'ом/SIGSEGV или ещё какой невозможной в этой вселенной вещью? > Как известно любая мера безопасности порождает новые риски. Поэтому > нужно наступить на горло собственной песне и перестать защищаться от > слишком маловероятных угроз (поскольку это ослабляет защиту от более > вероятных). Кажется я начинаю понимать, зачем гугель руками Пайка заставляет go-coders явно обрабатывать ошибки. > В /usr/bin НЕ МОЖЕТ БЫТЬ неведомой фигни. Любая фигня которая попадает в > /usr/bin (а не /usr/local/bin или ${HOME}/bin) должна быть ведома > пакетному менеджеру. Это моя неведомафигня, я её туда положил через пакетный менеджер. С предложениями про /usr/local/bin - это к помирающей freebsd. Там этой иерархии самое место. А про ~/bin - может тогда уже сразу мне докер/снап/флатпак присоветуешь?