Как сделать файл исполняемым?

Как я могу сделать свой файл, чтобы я мог дважды щелкнуть по нему, и он запускается. Это .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 за то, что он указал на те, которые в общем использовании!

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