mkdir bug?

rosali

скажите а почему mkdir -p -m XXX проставляет эту моду не всем созданным каталогам а только конечному? во всех юниксах так?
UPD я наверное тему непонятно назвал. я имею в виду "design" bug.

Serab

а почему
потому что так написано в коде.
http://forums11.itrc.hp.com/service/forums/questionanswer.do...

alfadred

скажите а почему mkdir -p -m XXX проставляет эту моду не всем созданным каталогам а только конечному? во всех юниксах так?
Так и должно быть
-p
Create any missing intermediate pathname components.
For each dir operand that does not name an existing directory, effects equivalent to those caused by the following command shall occur:
mkdir -p -m $(umask -Su+wx $(dirname dir) &&
mkdir [-m mode] dir

where the -m mode option represents that option supplied to the original invocation of mkdir, if any.

rosali

ну то что это задокументировано в итоге я конешно догадывался но это же страшно не удобно. если мне нужно за chmod-ить только конечный каталог, я могу это и сам сделать уже после mkdir. а как зачмодить все созданные каталоги непонятно, ведь только mkdir знает что он там насоздавал... а ну вот они предлагают umask=... mkdir -p ... ну не знаю это что "правильный" способ да?

alfadred

ну не знаю это что "правильный" способ да?
Это совместимость со стандартами, а стандарты эти писаны давно и хз почему именно так.
Можешь делать
$ (umask <нужные права> && mkdir -p <имя директории>)

slonishka

линукс кал? юзай install(1).

slonishka

линукс придает фразе такту, и потом, я из ports узнал об этой команде.
Оставить комментарий
Имя или ник:
Комментарий: