chmodでパーミッション変更。再帰オプション(-R)は実は使えなかった。。

$ chmod -R 0644 *.jpg

こんな感じでコマンドを実行すれば、カレントディレクトリ以下すべての*.jpgファイルのパーミッションが644になる。そう思っていた時期が僕にもありました。。。

でも、そうならないんですね。たしかchownだとそういう動きだったと思うんですが。


ちなみに-Rの使い方は、正しくは

$ chmod 0644 -R [dir]

です。
このやり方だと指定ディレクトリ以下のすべてのファイルおよびディレクトリが644になります。かなり使えません。


それでググってみたらこちらにたどり着きました。

http://technique.sonots.com/index.php?UNIX%2F%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%2F%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E7%AE%A1%E7%90%86%2Fchmod

今回はこのやり方で対応。

$ find . -type f -exec chmod 644 \{\} \;

ディレクトリ内のファイルはすべてjpgだったので、拡張子の指定はせずにそのまま実行。
拡張子で絞る場合はもう一工夫必要ですね。そのうち勉強してみたいと思います。