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

У меня есть рабочий стол Ubuntu 16.04 64 битов, в котором я установил wine в прошлом и позже удаленный это. Теперь, когда я пытаюсь открыть txt файлы в nautilus, во многих случаях я получаю dailouge поле, говоря, что файл является исполняемым файлом и должен ли я выполнять или отображать его. Я раздражаюсь этим поведением и хочу отменить, выполняют полномочия из этих файлов. Если кто-либо может показать мне, как сделать это, это будет полезно.

Спасибо

5
задан 22 September 2016 в 22:54

2 ответа

Удалить выполнить бит из всех .txt файлы в Вашем корневом каталоге и всех его подкаталогах, попробуйте:

find "$HOME" -type f -executable -name '*.txt' -execdir chmod a-x {} +

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

  • find "$HOME"

    Это запускается find поиск файлов, запускающихся с корневого каталога и рекурсивно включая все подкаталоги

  • -type f

    Это говорит find только искать регулярные файлы, не каталоги.

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

  • -executable

    Это говорит find только искать файлы, которые имеют исполняемый набор битов.

  • -name '*.txt'

    Это говорит find только искать файлы, имена которых соответствуют шарику *.txt.

  • -execdir chmod a-x {} +

    Это говорит find выполниться chmod a-x на любых таких найденных файлах.

    Мы используем -execdir, в противоположность -exec, потому что это более надежно, должен названия изменения каталогов, в то время как эта команда работает.

    + в конце формы -execdir chmod a-x {} + говорит find выполнять меньше экземпляров chmod путем помещения многих файлов на каждого chmod командная строка, если это возможно.

6
ответ дан 23 November 2019 в 09:12
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 November 2019 в 09:12

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

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