Как удалить разрешение на выполнение всех файлов txt в Ubuntu

В моем случае проблема была вызвана устаревшей библиотекой ssl python, я обновил ее, используя эту команду из домашнего каталога:

wget https://launchpad.net/ubuntu/+archive/primary/+files/python-cryptography_1.7.1-2_amd64.deb && wget https://launchpad.net/ubuntu/+archive/primary/+files/python-openssl_16.2.0-1_all.deb && sudo dpkg -i --auto-deconfigure python-cryptography_1.7.1-2_amd64.deb && sudo dpkg -i  python-openssl_16.2.0-1_all.deb

Исходная тема и обсуждение проблемы здесь 1]

1
задан 23 September 2016 в 08:54

1 ответ

find . -name "*.txt" -exec chmod a-x {} \;

find команда самоочевидна. Он находит файлы в соответствии с заданными аргументами. Использование: find location comparison-criteria search term

find . -name "*.txt" -exec chmod a-x {} \; Здесь. означает корневой каталог, -name "*.txt" означает найти все файлы, которые содержат «.txt» в их именах. -exec chmod a-x {} \; означает выполнение команды chmod для всех совпадающих файлов.

0
ответ дан 23 May 2018 в 05:51
  • 1
    Было бы неплохо, если бы вы добавили объяснение своей команды. – edwinksl 23 September 2016 в 09:31
  • 2
    если вы используете GNU find: замените \; на +, чтобы он не форкировал одну команду chmod для файла EACH, но только тогда, когда chmod имеет свой список параметров, заполненный (поэтому он в тысячи раз меньше называется, и, следовательно, более эффективны). поэтому "-exec chmod a-x {} \; означает выполнение команды chmod для всех совпадающих файлов " должен быть "-exec chmod a-x {} \; означает выполнение команды chmod в файле EACH " – Olivier Dulac 23 September 2016 в 15:36

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

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