Я использовал команду находки, не указывая каталог

Я использовал эту команду, не указывая каталог:

sudo find -type d -exec chmod 755 {} \

Что, возможно, произошло? Я был в/var/www/html папке. Это изменяло какие-либо полномочия вне/var/www/html каталога?

1
задан 8 December 2018 в 09:55

2 ответа

Вы пропустили a ; или a {} + и может пропустить путь (для выполнения, находят запуск в текущем dir),

sudo find -type d -exec chmod 755 {} \;

В этом случае Ваш поисковый запуск в текущем каталоге с subdirs. Но можно установить каталог, очевидно.

Текущий dir:

sudo find . -type d -exec chmod 755 {} \;

Полный путь:

sudo find /var/www/html -type d -exec chmod 755 {} \;

Объяснение:

sudo - выполненный как суперпользователь

find -type d - поисковые каталоги только (если Вам нужны файлы только, используют find -type f. Если Вы не файлы вопроса или директора, просто удалите - тип d [f] из команды).

-exec chmod 755 {} \; - команда выполнения chmod 755 для каждого основанного объекта в команде, который init - исполнительный параметрический усилитель (в этом случае находят команду).

-exec chmod 755 {} + - команда выполнения chmod 755 для полного массива основанных результатов сразу..

1
ответ дан 3 December 2019 в 06:50

Ubuntu использует GNU find, который принимает текущий рабочий каталог, если Вы не указываете тот. А именно, это принимает . и все объекты, которые найдены командой, будут иметь ./ префикс к их пути при передаче -exec команда. Таким образом, это только пересекло бы /var/www/html; если Ваш текущий рабочий каталог действительно был в /var/www/html ничто за пределами этого не было бы затронуто. Другие реализации find может потребовать аргумента каталога как BSD find например.

Однако как упомянутый ответ mature, Ваш синтаксис является неполным, следовательно та команда не работала бы. \ в конце сказал бы оболочке, что команда является неполной, и показать PS2 подсказка, которая является >

3
ответ дан 3 December 2019 в 06:50

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

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