UMASK не имеет опции

Вы пробовали что-то подобное с другого Сеанс ssh:

ssh raja@remote_host "ps -ef | grep telnet | grep 8080 | grep -v grep | awk '{print $2}' | xargs kill"

Причина использования каскадных команд grep состоит в том, чтобы предотвратить случайное завершение какого-либо другого сеанса telnet, не связанного с тем, что вы действительно хотите убить.

0
01.11.2018, 16:10
1 ответ

Поскольку umaskизменяет внутреннее состояние оболочки, она должна быть встроенной в оболочку.

Встроенные оболочки POSIX umaskимеют опцию -S, поскольку это требование POSIX, а csh— нет. На вашей справочной странице umaskописана встроенная функция umaskbash, а не csh. Обратитесь к справочной странице csh за документацией , встроенной в нее umask.

Нет веской причины использовать cshв этом столетии, особенно в системе GNU/Linux, но если вам нужно, вы всегда можете это сделать:

sh -c 'umask -S'

сообщить символическую форму этого umask.

Это сообщит о umaskдочернего процесса, выполняющего sh, но поскольку umaskнаследуется при fork и сохраняется во время exec, это должно быть таким же, как cshumask.

В любом случае, возвращаемый umaskне будет полезен для csh, так как встроенная функция cshдля umaskне поддерживает символические формы.

3
28.01.2020, 02:23

Теги

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