Как сделать файл (например, сценарий .sh) исполняемым, поэтому его можно запустить из терминала

Не показывать больше информации, это ошибка, но по-прежнему существует основная проблема с отказоустойчивым диском, который вам нужно немедленно адресовать.

Кстати, вчера был поток, который я предлагаю вам прочитать : Мне нужно заменить мой жесткий диск?

1
задан 12 November 2016 в 06:28

2 ответа

Существует два способа сделать исполняемый файл:

GUI-метод:

Перейдите на вкладку «Разрешения», затем отметьте поле «Выполнить: [] Разрешить выполнение файла как программы

GUI Method:

Вы можете использовать:

cd /to/my/required/directory [!d9 ]

Затем запустите

chmod +x filename.extension

или просто запустите:

chmod +x /path/to/your/filename.extension

chmod также имеет еще несколько дополнительных опций:

Пространства показывают, что они разделены: - rwx --- ---

Первым набором --- является Пользователь. Вторая - группа, а последняя - другая (кто-либо еще)

r означает чтение, w для записи и x для eXecute.

Итак, чтобы все могли его прочитать, но только Группа для выполнения и пользователя для чтения и записи (но по какой-то причине не выполняется):

-rw- rx- r-- Но это будет добавлено к команде как:

chmod также может делать это в цифрах. Это основано на двоичном (я думаю, что это 1,2 и 4)

Итак, есть такие числа:

Выполнить пользователем 100. Выполнить по группе 010. Выполнение другим - 001

Запись пользователем 200. Запись группой - 020. Запись другим - 002.

Чтение пользователем 400. Прочитать по группе 040.

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

Затем вы добавляете их вместе, чтобы получить желаемую комбинацию. он (но по какой-то причине не выполняется) будет:

400 + 040 + 004 и 010 и 200

Это добавляет до 600 + 050 + 004 = 654. [ ! d29]

Затем вы можете запустить команду.

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

Чтобы добавить чтение и запись для пользователя, не затрагивая никаких других разрешений (например, выполнить разрешения).

На этом веб-сайте есть очень полезная ячейка с галочкой, в которой вы можете отметить нужные параметры, и это дает вы выполните команду:

enter image description here

Однако не все pos сибильные комбинации разумны для использования; основные из них:

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 - [f47 ] может читать и писать, а Group может читать

777 и 666 редко используются, кроме как в /tmp.

Спасибо Этот сайт для указания из всех в обычном использовании!

29
ответ дан 25 May 2018 в 03:18
  • 1
    Разве это не основано на восьмеричном (8-базовом) вместо двоичного (на основе 2)? В двоичном коде вы можете иметь только 0 и 1, а в восьмеричном - 0, 1, ... 6, 7 – Justinas 2 January 2018 в 19:06
  • 2
    @Justinas двоичный, в котором 7 = 4 + 2 + 1 - 111 представляет Чтение, запись и выполнение. – Tim 2 January 2018 в 19:08

Run:

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
6
ответ дан 25 May 2018 в 03:18

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

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