@Linda-chan

Linda-chan

Линда Кайе
Linda-chan

Дата рождения: 01.11.1983

Тотальная неудачница и убийца жёстких дисков. Самая большая поклонница Ариэль. Член ордена Вселенского тормоза имени Осаки-сан. Любительница каваййных переднеприводных машинок. Суккуб на полставки. Когти прилагаются.

https://www.lindachan.net

10 я читаю 59 меня читают
15054 постов
25793 комментариев
Linda-chan
18 Sep 2019

Как известно, cron использует sh для запуска команд. Но через переменную SHELL можно задать тот же самый bash. Есть смысл это делать? Или использование sh даёт какое-то важное преимущество?

18 Sep 2019

почти никакого. запускается всё тот же баш. мойшешь заюзать, например, dash, пишут, что он пырее.

18 Sep 2019

sh подразумевает, что используется POSIX в качестве поведения - ради переносимости, что именно вызывается -- зависит от системы. dash (для дебианоподобных), bash в режиме совместимости, (a)sh -- на усмотрение. В общем случае менять не рекомендуется.

19 Sep 2019

schizomurr, кек. на уровне sh они все совместимы. а вот башизмы могут не прокатить, по-этому за инклюдами надо следить.

#mxsuo/3 в ответ на /2
19 Sep 2019

Почему не рекомендуется? Если у меня одна система, и никуда я её переносить не собираюсь...

#mxsuo/4 в ответ на /2
19 Sep 2019

Не рекомендуется ради переносимости и ожидаемого поведения. Традиционно, не более.
В качестве SHELL можно установить все что способно выполнить 7(6) параметр кронтаба + нюансы подобно конца строки. Либо в 7(6) параметр можно запихнуть все, что может SHELL. В зависимости от точки зрения.

#mxsuo/5 в ответ на /4
19 Sep 2019

sh подразумевает posix. Что для этого в системе - особенности отдельной конкретной системы.
если bash(1) в "INVOCATION" не врет, то:

If bash is invoked with the name sh, it tries to mimic the startup behavior of his‐
torical versions of sh as closely as possible, while conforming to the POSIX stan‐
dard as well. ...

Как и в zsh(1) в "COMPATIBILITY":

Zsh tries to emulate sh or ksh when it is invoked as sh or ksh respectively; ...

А дебиановский dash:

dash is the standard command interpreter for the system. The current version of dash
is in the process of being changed to conform with the POSIX 1003.2 and 1003.2a speci‐
fications for the shell.

// хотя мне его пришлось устанавливать вручную.


кушай кашку, читай руководства и не выебывайся -- все будет хорошо

#mxsuo/6 в ответ на /3
19 Sep 2019

Выше сказано, как шеллы прикидываются sh, а не зачем они это делают =_=

#mxsuo/7 в ответ на /6
19 Sep 2019

любой шелл должен уметь быть как sh, чтоб иметь возможность выполнить написанный в соответствии с sh-синтаксисом скрипт. т.е. втыкаешь ты себе глобально по всей системе zsh, а у тебя ничего не распидорасило и работает, потому что всё писали котики на базовом sh без башизмов.

#mxsuo/8 в ответ на /7

Добавить пост

Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Для форматирования текста используется Markdown.