r-x
新しく作成されたディレクトリのデフォルト権限を設定したいと思います。他の人そして新しく作成されたファイル(ディレクトリではなくファイル)には---
。
umaskを2に設定すると、ディレクトリ権限は取得されますr-x
が、ファイル権限は取得されませんr--
。
私が望むことを達成する方法を見つけることができませんumask
。
結局私が欲しいのは他の人ディレクトリを参照できますが、ファイルの内容を読み取ることはできません。とても合理的なニーズだと思いますが、結局そんな設定はないようです。
答え1
コマンドを使用してシェルプロンプトからディレクトリを作成する場合は、次のことがmkdir
できます。
umask 7
mkdir() (umask 2 && command mkdir "$@")
シェルのカスタムファイル(~/.zshrc
for zsh
、~/.bashrc
for bash
...)にあります。
つまり、umaskを7に設定しますが、umask 2でmkdir
実数mkdir
(同じ引数()を使用)で関数を呼び出すようにオーバーライドします。"$@"
((...)
サブシェルが作成されるため、そのumask 2
関数内でのみ適用されます。)