Как сделать файл исполняемым?
Как я могу сделать свой файл, чтобы я мог дважды щелкнуть по нему, и он запускается. Это .sh сценарий, но у меня также есть файлы, которые говорят:
executable (application/x-executable)
в описании, что они есть.
Я не могу запустить ни один из них из терминала, или двойным щелчком.
Если возможно, я бы хотел использовать способ с графическим интерфейсом или терминалом, но не их комбинацию.
Вот скриншот того, что я вижу, когда я щелкаю правой кнопкой мыши и затем выбираю свойства. Файл первым:

И скрипт оболочки здесь:

NB: Я принимаю, что это дубликат (я искал его, но не смог его найти, поэтому спросил + ответил на него, надеясь, что найду его), однако я не думаю, что вопрос о файлах.desktop дубликат
1 ответ
Есть два способа сделать файл исполняемым:
GUI Метод:
Перейдите на вкладку разрешений, затем поставьте галочку Execute: [✓] Разрешить выполнение файла как программы.
Метод командной строки:
Просто беги:
chmod +x /path/to/your/file.txt
Обратите внимание, чтоchmodтакже есть более продвинутые опции. Он принимает три группы вариантов, представленных в виде --- --- ---, Первый набор ---Пользователь. Второе - это Группа, а последнее - Другое (все остальные).
rстоит для чтения,w для записи и x для исполнения.
Чтобы позволить всем читать это, но только Группа, чтобы выполнить и Пользователь, чтобы читать и писать это было бы-rw- rx- r--, Это будет добавлено к команде как:
chmod +rw-rx-r-- /path/to/file.extension
chmodТакже можно сделать это в цифрах. Он основан на двоичном.
Итак, есть эти цифры:
Выполнить пользователем100, Выполнить по группе 010, Выполнить другим есть 001
Написать пользователем200, Написать по группе 020, Написать другим есть 002,
Читать пользователем400, Читать группой 040, Читать другим есть 004,
Затем вы складываете их вместе, чтобы получить желаемую комбинацию.
Таким образом, чтобы позволить всем читать это, но только Группа, чтобы выполнить и Пользователь, чтобы написать это было бы400 + 040 + 004а также 010 а также 200
Это складывается в600 + 050 + 004 = 654,
Затем вы можете запустить команду.
chmod +654 /path/to/file.extension
установить это. Таким образом, чтобы установить все разрешения, вы можете запустить:
chmod +rwxrwxrwx /path/to/file.extension
или же
chmod +777 /path/to/file.extension
Наконец, вы можете сделать:
chmod -777 /path/to/file.extension
Отнять все разрешения у всех.
А также:
chmod +300 /path/to/file.extension
Чтобы добавить чтение и запись для пользователя, не затрагивая другие разрешения (например, разрешения на выполнение).
На этом веб-сайте есть очень полезный маленький инструмент, с помощью которого вы можете отметить нужные опции, и он дает вам команду:
Однако не все возможные комбинации целесообразно использовать; основные из них следующие:
755 -
Ownerимеет все, иGroupа такжеOtherможет читать и выполнять700 -
Ownerимеет все644 -
Ownerможет читать и писать, иGroupа такжеOtherмогу читать600 -
Ownerумею читать и писать
И, если вы используете нетривиальные группы пользователей:
775 -
Ownerможет читать и писать, иGroupа такжеOtherмогу читать770 -
Ownerа такжеGroupесть все, иOtherможет читать и выполнять750 -
Ownerимеет все, иGroupможет читать и выполнять664 -
Ownerа такжеGroupможет читать и писать, иOtherмогу просто прочитать660 -
Ownerа такжеGroupумею читать и писать640 -
Ownerможет читать и писать, иGroupмогу читать
777 и 666 используются редко, за исключением/tmp,
Спасибо Ilmari Karonen за то, что он указал на те, которые в общем использовании!
