1つだけ過去を変えられるとしたら?

FedoraCore3を使っています。
GUIのファイルブラウザにて右クリック→プロパティ→アクセス権の変更を行っています。
選択したファイル・ディレクトリは変更できますが、選択したディレクトリの下の階層は変更できません。
選択したディレクトリの以下の階層すべてを変更するにはどのようにすればよいのでしょうか。
GUIの操作でもCUIコマンド操作でもかまいません。
よろしくお願いいたします。

A 回答 (8件)

こんにちは。

私は、こんなやりかたすきです。

chmod 644 `find ./* -type f -print`

皆さん御存じかと、おもいますが、もし、ご存じない方のために
644 : 自分以外 "リード権だけ"
` : バッククォテーション
find の -type f は、通常ファイル(自分の階層以下全部)
けれど、これだと、実行権つきファイルも変更されるよ!
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
お礼が送れてスイマセン。

恥ずかしながらバッククォーテーションのタイプが出来ませんでした。
「ね」のキーのところだと思うのですが...
追って確認したいと思います。

本当にありがとうございました。

お礼日時:2006/02/20 09:57

こんにちは、わたし、ここで解答させて戴いてから、さて、実行結果も一気に見たいなと思ってやってみたら、一時間で解決せず、質問(始めて)したら、三人目のかた、素晴らしい方が、下記のような、解答くれました。

ご参考までに。(コマンドの連続実行です)

chmod 777 `find ./* -type f -print` && ls -l ./*

です。
(これ、"chmod" が 成功したときだけ、"&&" の後が実行されます。)
    • good
    • 0
この回答へのお礼

ありがとうございます。

No.1979437の質問も見させてもらいました。
私には理解しがたいところもありますが、参考になりました。
 http://oshiete1.goo.ne.jp/kotaeru.php3?q=1979437

これからお世話になるかもしれません。
よろしくお願いします。

お礼日時:2006/02/22 09:43

Unix を使うのであればマニュアルを読む習慣をつけると良いでしょう :)。



$ man find
(中略)
 -type c
   c で表されるタイプのファイルならば真。 c としては以下がある:
   b ブロックスペシャルファイル (バッファ付き)
   c キャラクタスペシャルファイル (バッファ無し)
   d ディレクトリ
   p 名前付きパイプ (FIFO)
   f 通常のファイル
   l シンボリックリンク
   s ソケット

普通は f, d くらい覚えておけば十分ですけどね。
    • good
    • 0
この回答へのお礼

何度も回答ありがとうございます。

fとdの違いについて分かりました。ありがとうございます。
-execなど他にも分からないコマンドオプションもありますが、
マニュアルを参照し理解したいと思います。

コマンドに関する回答だけでなく、
Unix(Linux)における姿勢までアドバイスをいただきありがとうございました。
何事においてもマニュアルを読まずに初めてしまうタイプなので
私にとり良いアドバイスだったと思います。

ありがとうございました。

お礼日時:2006/02/20 17:20

>wipe さん、こんにちは、この位返事送れたの、送れたうちに入らないから、ジェンジェンだいじょぶー。


"`(バックククォーテーション)" は、それがしのマシンでは、"@" の上だよーん。
それから "f" と "d" ですが、
f: 通常ファイル
d: ディレクトリー
です。
(おまけ、"ね" の上のやつ、それがし一度も使ったことないら)
    • good
    • 0
この回答へのお礼

かさねがさねの回答ありがとうございます。

バッククオーテーションの件、確認いたしました。
fとdの違いも確認できました。

稀少な質問には回答が少ないので期待していなかったのですが、
多くの回答を受け非常にうれしく思います。
初心者ゆえまたお世話になるかもしれません。
そのせつはまたよろしくお願いします。
ありがとうございました。

お礼日時:2006/02/20 17:12

>hetarepyon樣 、こんにちは、(それがし、質問者ではありませぬー)。


"-exec" オプションってよさげなので、今後、使わせて戴きます。ありがとうございました。
hetarepyon樣 の前に解答させていただいた、つまらないものです。

この回答への補足

いろいろな回答を頂いている中、質問者がレス無しで申し訳ありませんでした。
思いのほか回答をいただき嬉しく思います。
やはりGUIを使っていてはまだまだですね。。。

補足日時:2006/02/20 10:21
    • good
    • 0

では、私も :)。



$ find dir -type f -exec chmod 644 {} \;
$ find dir -type d -exec chmod 755 {} \;

1 つ目が dir 以下の全てのファイルを 644 に、2つ目が同じく dir 以下の全てのディレクトリを 755 にします。

この回答への補足

コマンドのfとdの違いは何でしょうか?
また{} \;も何をしているのでしょうか?
ご説明お願いします。

補足日時:2006/02/20 10:02
    • good
    • 0
この回答へのお礼

回答ありがとうございます。お礼が送れてスイマセン。

初心者なもので簡単な補足要求で申し訳ありません。
コマンド実行にてご説明通りの確認ができましたが、
fとdを変えてみて実行しても違いがわかりませんでした。

ベテランの方でも使えるとの評でしたので覚えておきたいのですが、意味も分からず覚えるのではすぐ忘れてしましそうなので...おねがいします。

回答、本当にありがとうございました。

お礼日時:2006/02/20 10:11

こんにちは


ディレクトリの以下の階層すべてを変更するには
CUIで
chmod +x -R folder/
でOKだと思います
+xは実行 権限を追加する意味です。
実際どういう変更がしたいのかわかりませんが、その部分を変更すればOKだと思います。

参考URL:http://www.tokaido.co.jp/syoko/handyman/chmod.html
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
お礼が送れてスイマセン。

No1の回答では直接数値(777)を入れ出来ましたが、
このようなやりかたもあるのですね。
応用で-xとか+Wなどの使い方も分かり参考になりました。

実際の変更は744→777にしたかったのです。
所有者以外で変更できなかったのが問題でした。

本当にありがとうございました。

お礼日時:2006/02/20 09:49

%chmod -R Dir



詳細は参照URLを見てください。
(もしくは、man chmod)

参考URL:http://www.linux.or.jp/JM/html/gnumaniak/man1/ch …
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
お礼が送れてスイマセン。

変更できました。ありがとうございました。

manの説明は分かりにくかったです。
分かっている人には良いマニュアルかもしれませんが、
素人には分かりにくいときがあります。
やはり人から教えてもらうとわかりやすいです。

本当にありがとうございました。

お礼日時:2006/02/20 09:36

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!