Как сделать расширение файла неисполняемым?
Да, я знаю, что могу сделать файл не исполняемым, установив соответствующие биты прав доступа для этого файла. Что я хочу сделать, так это сделать все файлы с определенным расширением неисполняемыми, чтобы Nautilus подсказал. Конкретное расширение, которое я имею в виду, .txt,
Таким образом, Как поручить Ubuntu не выполнять файлы с .txt расширение?
Примечание. Насколько я знаю, в Windows 7 есть похожая функция.
2 ответа
Ни один файл не имеет разрешений на выполнение при создании, если вы сами не изменили настройки umask по умолчанию. Вам всегда нужно самим устанавливать права доступа к исполняемым файлам.
Что я хочу сделать, так это сделать все файлы с определенным расширением неисполняемыми, чтобы Nautilus подсказал.
У Наутилуса есть несколько опций (в настройках, поведении, среднем наборе опций):

Это проверяет файл, по которому вы щелкаете, и проверяет, что это за файл (проверяя строку shebang или 1-й байт файла), чтобы узнать, является ли он исполняемым, и предлагает выполнить, просмотреть или спросить, что делать с файл, который вы нажали. Текстовые файлы, содержащие текст (а не шебанг и / или код), всегда будут открываться, а не выполняться.
Имейте в виду: это не основано на расширениях. Расширения являются (/ должны быть!) Наглядными пособиями для нас, людей; не способ для программ идентифицировать файлы (MP3 с именем music.txt по-прежнему является MP3, а не текстовым файлом).
Ubuntu предлагает выполнить файл, только если у него есть разрешения на выполнение. Так что удалите разрешение на выполнение из всех файлов.txt, и все готово.
find /home/yourname -type f -iname "*.txt" -exec chmod -x {} \;
Может также сделать правый клик "открыть с помощью" и изменить программу по умолчанию на ваш редактор.