Я хочу изменить разрешение каждого файла в каталоге. Я использую chmod 777
но тратить время, если у меня есть 50 файлов.
Как сделать так, чтобы все файлы внутри директории становились rwx
без изменения их по одному?
Я хочу изменить разрешение каждого файла в каталоге. Я использую chmod 777
но тратить время, если у меня есть 50 файлов.
Как сделать так, чтобы все файлы внутри директории становились rwx
без изменения их по одному?
chmod-cR 777 *
будет рекурсивно изменять все файлы, включая подкаталоги (опция R), включая подкаталоги, но также сообщать о том, когда он вносит изменения (опция c).
вместо того, чтобы изменять все файлы со слишком широкими разрешениями, вы можете изменить владельца.
sudo chown -hR tomcat
строка выше изменяет owndership на сервере приложений tomcat, вам нужно выяснить, какой пользователь использует ваш веб-сервер. Вы можете легко увидеть что делать
ps aux
(параметр H предназначен для изменения owndership символической ссылке, если сталкивались, но не на файлы ссылка на)
то, что вы делаете, более чем вероятно, небезопасно, и приведенная ниже команда должна вызываться только в том случае, если вы полностью принимаете проблемы безопасности.
find . -type d -exec chmod 777 '{}'* \;
Это будет рекурсивно пройти через текущий каталог и каждый подкаталог и, соответственно, изменение разрешения; если я не сделал это достаточно ясно, это очень плохая идея (права 777)
этот скрипт выполнит команду для всех файлов в текущем каталоге:
sudo find . -name "*" | awk '{print("chmod 777 ")}'| /bin/sh
чтобы сначала протестировать сценарий, вы можете просто вывести операторы, не передавая их в оболочку для выполнения:
sudo find . -name "*" | awk '{print("chmod 777 ")}'
этот же шаблон, использующий awk, обычно полезен для выполнения команд пакетной оболочки.
просто типа:
chmod 777 *
Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]