Я пытаюсь использовать find
в сочетании с -exec
и chmod
для рекурсивного изменения разрешений для каждого файла и каталога в папке через SSH.
Я хочу сделать эти две команды в одной строке:
find /share/Multimedia/ -type f -exec chmod 644 {} \;
find /share/Multimedia/ -type d -exec chmod 755 {} \;
Я смог найти решение до того, как кто-то еще что-то разместил, и по какой-то причине моя история команд bash была очищена, и я не записал синтаксис, который использовал в другом месте для справки. Я не часто делаю это, поэтому я не слишком разбираюсь в стандартных командах Unix.
Я использовал что-то вроде:
# probably won't execute
find /share/Multimedia/ ( if -type f -exec chmod 644 {} \; else if -type d -exec chmod 755 {} \; )
Я только хочу запускать это на моем NAS время от времени, чтобы нормализовать разрешения за один раз, возможно, без присмотра, чтобы сделать что-то еще в это время, пока мой NAS обрабатывает это.