Русский

Инструменты разработчика · Калькулятор Chmod

chmod -R с заглавной буквы X: рекурсивные разрешения без исполняемых файлов.

· Как это работает

chmod Юникс рабочий процесс разработчика

рекурсивные команды, показанные в виде отдельной диаграммы битов разрешения Unix
Оригинальная векторная иллюстрация ToolAcre

Рекурсивный chmod либо удаляет выполнение из каталогов, либо добавляет его в файлы, если вы не используете инструменты, созданные для различения. В этом посте объясняется заглавная буква X и альтернатива поиска.

Каждый файл в дереве теперь помечен как исполняемый — chmod -R 755 исправил каталоги и сделал каждый исполняемый файл .txt также

Рекурсивная команда может наложить один режим на объекты, которым требуются разные разрешения. Введите 755, и калькулятор отобразит rwxr-xr-x, затем сравните объяснения для обычного файла и каталога. Выполнение позволяет файлу работать как программа, но позволяет войти в каталог и получить доступ к его именованному содержимому. Таким образом, одна цифра имеет совершенно разные последствия.

Компоновщик может отображать -R и безопасно указывать указанный путь, но он никогда не открывает этот путь и не запускает chmod. Сравните 755 с 644: первый разрешает выполнение каждому классу, а второй отображает rw-r--r--. Это показывает, как рекурсия может создавать непреднамеренные исполняемые файлы, ничего не заявляя о реальном дереве каталогов.

Почему один режим не может соответствовать обоим: файлам обычно нужен 644, а каталогам 755, а -R применяет один режим ко всему

Один режим не может выражать отдельные правила для каталогов и обычных файлов. Режим 755 позволяет владельцу читать, записывать и выполнять, а группа и другие получают чтение и выполнение. Режим 644 удаляет каждый бит выполнения и резервирует запись для владельца. Целевой селектор меняет объяснение, а не основные биты.

Сравните кандидатов самостоятельно в матрице. В 755 каждый класс имеет выполнение; под 644 каждое поле выполнения очищается, и только владелец сохраняет право записи. Восьмеричный, символический текст, сводка и флажки получаются из одного целого числа, поэтому соглашение подтверждает согласованность кодировки, а не пригодность для неизвестной цели или среды.

Разрешение с заглавной буквы X — выполнение устанавливается только в том случае, если целью является каталог или уже выполнено выполнение для какого-либо класса.

Заглавная буква X принадлежит символической командной грамматике chmod, которую этот калькулятор не анализирует и не генерирует. Его символический ввод представляет собой фиксированный девятисимвольный дисплей ls, а сгенерированные присваивания используют явные предложения u=, g= и o= с r, w и x. Он может отображать конечные режимы, но не может решить, какой элемент дерева выбрать заглавную букву X.

Относитесь к этому различию как к твердой границе. Введите 755 для проверки rwxr-xr-x и 644 для проверки rw-r--r--; оба являются фиксированными результатами. На странице объясняется, что для каталогов и файлов выполняется по-разному, но при этом нет обходчика пути, инвентаризации типов или состояния предварительного выполнения. Он не может моделировать капитал X для смешанных рекурсивных целей.

Заглавная буква X принадлежит грамматике chmod, но не генерируется этим калькулятором.

Поддерживаемое сравнение начинается с завершенных режимов, а не с рекурсивной символьной команды. Введите 755 для каталога: в сводке показаны 0755 и drwxr-xr-x, с записью владельца, а также чтением и выполнением для всех классов. Введите 644 для файла: он отображает 0644 и -rw-r--r-- без разрешений на выполнение.

Одновременно каждый класс теряет выполнение с 755 по 644, в то время как запись владельцем и универсальное чтение остаются. Сгенерированные назначения остаются отдельными: u=rwx,g=rx,o=rx и u=rw,g=r,o=r. Калькулятор не объединяет их в одну рекурсивную операцию и не выбирает цели; он проверяет представления для отдельно рассматриваемого рабочего процесса.

Рабочий пример: сравнить полученные режимы 755 и 644 отдельно.

Разделение файлов и каталогов с помощью find — это внешний рабочий процесс, а не функция калькулятора. На странице нет сканера, фильтра путей, проверки типа или исполнителя. Вместо этого он может декодировать предлагаемые режимы каталогов и файлов до сборки команд. Проверка 755 и 644 по отдельности предотвращает скрытие разрешения на выполнение знакомым номером.

Держите открытие отдельно от конверсии. Любой механизм выбора каталогов или обычных файлов должен быть рассмотрен в другом месте. В калькуляторе арифметика детерминирована: чтение добавляет 4, запись 2 и выполнение 1 для каждой цифры класса. Это проверяет предполагаемые значения, не заявляя о поддержке синтаксиса поиска, правил обхода или переносимого рекурсивного поведения.

рекурсия на основе поиска — это внешний рабочий процесс, а не функция калькулятора

Отображаемая рекурсивная команда ничего не гарантирует в отношении символических ссылок. Выбор «Применить рекурсивно» просто добавляет -R к предварительному просмотру; он не проверяет каталоги, не обнаруживает ссылки и не прогнозирует поведение операционной системы. Поле пути создает только текст оболочки в кавычках. Даже активные символы оболочки остаются инертными, пока кто-то намеренно не скопирует и не выполнит команду в другом месте.

Прочитайте предварительный просмотр как запрошенные биты режима, а не симуляцию. Калькулятор может отображать 755 как rwxr-xr-x и создавать chmod -R 755 с путем в кавычках. Он не может идентифицировать достигнутые объекты, поведение при следовании по ссылкам или поддержку файловой системы. Эти ответы требуют фактической реализации команды и среды, которые не представлены входными данными браузера.

Отображаемая команда -R не несет гарантии межплатформенной символической ссылки.

Сохранение режима с помощью архивов, инструментов синхронизации или Git лежит вне исходников. Калькулятор не считывает архив, метаданные репозитория или историю передач. Он принимает одно значение и отображает восьмеричный символьный текст, флажки, прозу и команду chmod. При этом проверяется предоставленное значение разрешения, а не то, записывает ли его другой инструмент, удаляет или восстанавливает его.

После того, как внешняя передача изменила режим, используйте калькулятор только для доказуемых разностей. Декодируйте наблюдаемые и ожидаемые значения, затем идентифицируйте измененного владельца, группу или другие биты. Например, 755 и 644 различаются во всех позициях выполнения. Источник не может приписать эту разницу rsync, tar, Git, umask или файловой системе.

Сохранение режимов архивирования, rsync и Git находится за пределами исходного набора.

Надежный вывод уже, чем рецепт с большой буквы. Для каталогов и файлов могут потребоваться разные конечные режимы, и калькулятор делает каждый результат разборчивым. Он принимает восьмеричный или фиксированный символьный ввод и синхронизирует матрицу. В этом сравнении 755 сохраняет выполнение для каждого класса, а 644 удаляет выполнение повсюду.

Используйте сгенерированный результат в качестве артефакта проверки. Страница может добавить -R, но не может условно выбирать каталоги, проверять существующие биты выполнения или определять обход ссылок. Ему также не хватает прав собственности, ACL и политического контекста. Проверьте каждый фиксированный результат, подтвердите восьмеричное и символическое соответствие, затем проверьте реальные цели перед применением любого режима.