У меня есть файл script.sh, и тип этого файла - файл shellscript. Я хочу сделать этот файл как application / x-исполняемый файл. Как я могу это сделать?
Вы можете пометить файл как исполняемый:
chmod +x filename.sh
Затем вы можете запустить его следующим образом:
./filename.sh
Если вы хотите использовать другую команду для его запуска, вы можете добавить псевдоним:
gedit ~/.bashrc
Добавьте это в конец файла:
alias <new name>='/home/<full path to script>/filename.sh'
Откройте новый сеанс терминала или введите source ~ / .bashrc
в вашем терминале, чтобы подать заявку.
Затем просто используйте новое имя для запуска сценария.
Выполнить:
chmod +x /path/to/file.sh
Чтобы сделать его невыполняемым, выполните:
chmod -x /path/to/file.sh
Например, я создал .sh
файл:
vi tester12.sh
После того, как я напишу код в редакторе vi, я выйду из редактора vi:
:wq!
chmod +x tester12.sh
./tester12.sh
Есть два способа сделать файл исполняемым:
Метод графического интерфейса:
Щелкните файл правой кнопкой мыши и выберите «Свойства».
Перейдите на вкладку разрешений, затем установите флажок Выполнить: [] Разрешить выполнение файла как программу
или в Nautilus Программа: [] Разрешить запуск этого файла как программу
в Thunar. [] 1267] Терминал / Метод команды:
Вы можете использовать:
cd / to / my / required / directory
Затем запустите
chmod + x filename.extension
Или просто запустите:
chmod + x /path/to/your/filename.extension
chmod
также имеет несколько дополнительных параметров:
Пробелы показывают, что он разделен: - rwx - - ---
Первый набор ---
- это Пользователь. Второй - Группа, а последний - Другой (кто угодно)
r означает чтение, w для записи и x для eXecute.
Таким образом, чтобы разрешить всем читать его, но только Группа для выполнения и Пользователь для чтения и записать его (но по какой-то причине не выполнить) будет:
-rw- rx- r -
Но это будет добавлено к команде как:
chmod + rw-rx-r-- / путь / к / файлу.расширение
chmod
также может делать это в числах. Он основан на двоичном формате (я думаю, что это 1,2 и 4)
Итак, вот эти числа:
Выполнить пользователем - 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 - Владелец
имеет все, а Группа
и Другие
могут читать и выполнять
700 - Владелец
имеет все
644 - Владелец
может читать и писать, а Группа
и Другое
могут читать
600 - Владелец
может читать и писать
И, если вы используете нетривиальные группы пользователей:
775 - Владелец
может читать и писать, а Группа
] и Другой
может читать
770 - Владелец
и Группа
имеют все, а Другой
может читать и выполнять
750 - Владелец
имеет все, и Группа
может читать и выполнять
664 - Владелец
и Группа
может читать и писать, и Другой
может просто читать
660 - Владелец
и Группа
могут читать и писать
640 - Владелец
может читать и писать,и Группа
может читать
777 и 666 используются редко, за исключением /tmp.
. Спасибо Илмари Каронен за указание на общие использование!