人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

パーミッションの設定方法に関して教えて下さい。使用OSはLinuxになります。

やりたいことは、とあるディレクトリ以下に、かなりの量のWebコンテンツがあるのですが、現在、全てのディレクトリ及びファイルが0777という権限になっております。それを、なるべく手間のかからない方法で、ファイル群は0400、ディレクトリ群は0500にしたいのですが、どのようにすれば宜しいでしょうか。

●質問者: harvard
●カテゴリ:コンピュータ インターネット
✍キーワード:Linux OS Web とある コンテンツ
○ 状態 :終了
└ 回答数 : 4/5件

▽最新の回答へ

1 ● hato0013
●40ポイント

http://d.hatena.ne.jp/yumatsumo/20070516

findを使うと楽に実現できるんだと思います。

# ファイル
find 対象のルートディレクトリ -type f -exec chmod 0400 {} \;

# ディレクトリ
find 対象のルートディレクトリ -type d -exec chmod 0500 {} \;

2 ● azumi1975
●0ポイント

FFFTP

http://www2.biglobe.ne.jp/~sota/ffftp.html


3 ● yas-mal
●40ポイント

そのディレクトリ直下のファイル/ディレクトリのみでいいのでしょうか?

それなら、以下のようになると思います。

ls -F [ディレクトリパス]|grep -v /|xargs chmod 400

ls -F [ディレクトリパス]|grep /|xargs chmod 500

もし、ディレクトリ直下だけでなく、さらに深いディレクトリまでたどりたいのでしたら、以下のようになります。

find [ディレクトリパス] -type f|xargs chmod 400

find [ディレクトリパス] -type d|xargs chmod 500


4 ● b-wind
●10ポイント
#/bin/sh

find /path/to/target -type f -print0 | xargs -0 chmod 400
find /path/to/target -type d -print0 | xargs -0 chmod 500

まぁ既存の回答と大して変わらないが、イレギュラーなファイル名が

含まれている場合にこちらのほうが安全ではある。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ