Файлы chmod только во всех подкаталогах

Пожалуйста, помогите мне с chmod, у меня есть следующая файловая структура

-dir1 --file1 --file2 --dir1a ---file1a1 ---file1a2 --dir1b ---file1b1 ---file1b2

Как мне chmod 655 ко всем файлам под dir1 и всем subdir? Таким образом, все файлы будут иметь разрешение 655, и все файлы будут оставаться такими, как они были.

Спасибо

42
задан 24 August 2011 в 16:28

14 ответов

Лучше использовать

find . -type f -exec chmod 655 -- {} +

Другое предлагаемое решение от @sagarchalise не будет работать, если имена файлов содержат пробелы или начинаются с тире.

85
ответ дан 25 May 2018 в 19:10
  • 1
    Кроме того, для chmod всех каталогов вы можете использовать find . -type d -exec chmod 755 {} + для изменения всех каталогов до 755. – Kris Harper 24 August 2011 в 18:02
  • 2
    это работает, без боли :). Благодаря! – netic 27 August 2011 в 07:37
  • 3
    Что такое +? – Brettski 28 January 2017 в 02:14
  • 4
    @Brettski: знак + расширен find в список путей файла (или его часть, если она слишком длинная). – enzotib 28 January 2017 в 11:44
  • 5
    Что такое? – Orient 4 December 2017 в 15:32

Лучше использовать

find . -type f -exec chmod 655 -- {} +

Другое предлагаемое решение от @sagarchalise не будет работать, если имена файлов содержат пробелы или начинаются с тире.

87
ответ дан 25 July 2018 в 21:25

Лучше использовать

find . -type f -exec chmod 655 -- {} +

Другое предлагаемое решение от @sagarchalise не будет работать, если имена файлов содержат пробелы или начинаются с тире.

87
ответ дан 31 July 2018 в 11:31

Лучше использовать

find . -type f -exec chmod 655 -- {} +

Другое предлагаемое решение от @sagarchalise не будет работать, если имена файлов содержат пробелы или начинаются с тире.

87
ответ дан 2 August 2018 в 03:04

Лучше использовать

find . -type f -exec chmod 655 -- {} +

Другое предлагаемое решение от @sagarchalise не будет работать, если имена файлов содержат пробелы или начинаются с тире.

88
ответ дан 4 August 2018 в 18:55

Лучше использовать

find . -type f -exec chmod 655 -- {} +

Другое предлагаемое решение от @sagarchalise не будет работать, если имена файлов содержат пробелы или начинаются с тире.

88
ответ дан 6 August 2018 в 03:17

Лучше использовать

find . -type f -exec chmod 655 -- {} +

Другое предлагаемое решение от @sagarchalise не будет работать, если имена файлов содержат пробелы или начинаются с тире.

88
ответ дан 7 August 2018 в 20:58

Я думаю, что внутри dir1 и

find . -type f | xargs chmod 655

сделают трюк.

5
ответ дан 25 May 2018 в 19:10
  • 1
    это тоже работает, но у меня есть предупреждение с «Нет такого файла или каталога». – netic 27 August 2011 в 07:39
  • 2
    @manetic: это зависит, как сказано в моем ответе, от имен файлов, содержащих пробелы. – enzotib 27 August 2011 в 10:51
  • 3
    Для полноты, изменяя его, чтобы найти. -тип f -print0 | xargs -0 chmod 655 исправит проблему пространства, на которую я верю, хотя ответ @ enzotib более краткий – matt freake 20 August 2015 в 13:22
  • 4
    что сказал матовый фриак – Sergiy Kolodyazhnyy 4 April 2017 в 13:28

Я думаю, что внутри dir1 и

find . -type f | xargs chmod 655

сделают трюк.

6
ответ дан 25 July 2018 в 21:25
  • 1
    это тоже работает, но у меня есть предупреждение с «Нет такого файла или каталога». – netic 27 August 2011 в 07:39
  • 2
    @manetic: это зависит, как сказано в моем ответе, от имен файлов, содержащих пробелы. – enzotib 27 August 2011 в 10:51
  • 3
    Для полноты, изменяя его, чтобы найти. -тип f -print0 | xargs -0 chmod 655 исправит проблему пространства, на которую я верю, хотя ответ @ enzotib более краткий – matt freake 20 August 2015 в 13:22
  • 4
    что сказал матовый фриак – Sergiy Kolodyazhnyy 4 April 2017 в 13:28

Я думаю, что внутри dir1 и

find . -type f | xargs chmod 655

сделают трюк.

6
ответ дан 31 July 2018 в 11:31
  • 1
    это тоже работает, но у меня есть предупреждение с «Нет такого файла или каталога». – netic 27 August 2011 в 07:39
  • 2
    @manetic: это зависит, как сказано в моем ответе, от имен файлов, содержащих пробелы. – enzotib 27 August 2011 в 10:51
  • 3
    Для полноты, изменяя его, чтобы найти. -тип f -print0 | xargs -0 chmod 655 исправит проблему пространства, на которую я верю, хотя ответ @ enzotib более краткий – matt freake 20 August 2015 в 13:22
  • 4
    что сказал матовый фриак – Sergiy Kolodyazhnyy 4 April 2017 в 13:28

Я думаю, что внутри dir1 и

find . -type f | xargs chmod 655

сделают трюк.

6
ответ дан 2 August 2018 в 03:04
  • 1
    это тоже работает, но у меня есть предупреждение с «Нет такого файла или каталога». – netic 27 August 2011 в 07:39
  • 2
    @manetic: это зависит, как сказано в моем ответе, от имен файлов, содержащих пробелы. – enzotib 27 August 2011 в 10:51
  • 3
    Для полноты, изменяя его, чтобы найти. -тип f -print0 | xargs -0 chmod 655 исправит проблему пространства, на которую я верю, хотя ответ @ enzotib более краткий – matt freake 20 August 2015 в 13:22
  • 4
    что сказал матовый фриак – Sergiy Kolodyazhnyy 4 April 2017 в 13:28

Я думаю, что внутри dir1 и

find . -type f | xargs chmod 655

сделают трюк.

6
ответ дан 4 August 2018 в 18:55
  • 1
    это тоже работает, но у меня есть предупреждение с «Нет такого файла или каталога». – netic 27 August 2011 в 07:39
  • 2
    @manetic: это зависит, как сказано в моем ответе, от имен файлов, содержащих пробелы. – enzotib 27 August 2011 в 10:51
  • 3
    Для полноты, изменяя его, чтобы найти. -тип f -print0 | xargs -0 chmod 655 исправит проблему пространства, на которую я верю, хотя ответ @ enzotib более краткий – matt freake 20 August 2015 в 13:22
  • 4
    что сказал матовый фриак – Sergiy Kolodyazhnyy 4 April 2017 в 13:28

Я думаю, что внутри dir1 и

find . -type f | xargs chmod 655

сделают трюк.

6
ответ дан 6 August 2018 в 03:17
  • 1
    это тоже работает, но у меня есть предупреждение с «Нет такого файла или каталога». – netic 27 August 2011 в 07:39
  • 2
    @manetic: это зависит, как сказано в моем ответе, от имен файлов, содержащих пробелы. – enzotib 27 August 2011 в 10:51
  • 3
    Для полноты, изменяя его, чтобы найти. -тип f -print0 | xargs -0 chmod 655 исправит проблему пространства, на которую я верю, хотя ответ @ enzotib более краткий – matt freake 20 August 2015 в 13:22
  • 4
    что сказал матовый фриак – Sergiy Kolodyazhnyy 4 April 2017 в 13:28

Я думаю, что внутри dir1 и

find . -type f | xargs chmod 655

сделают трюк.

6
ответ дан 7 August 2018 в 20:58
  • 1
    это тоже работает, но у меня есть предупреждение с «Нет такого файла или каталога». – netic 27 August 2011 в 07:39
  • 2
    @manetic: это зависит, как сказано в моем ответе, от имен файлов, содержащих пробелы. – enzotib 27 August 2011 в 10:51
  • 3
    Для полноты, изменяя его, чтобы найти. -тип f -print0 | xargs -0 chmod 655 исправит проблему пространства, на которую я верю, хотя ответ @ enzotib более краткий – matt freake 20 August 2015 в 13:22
  • 4
    что сказал матовый фриак – Sergiy Kolodyazhnyy 4 April 2017 в 13:28

Другие вопросы по тегам:

Похожие вопросы: