Как запустить файл на исполнение файл

Обновлено: 07.07.2024

Код, написанный на языке Python, может храниться в редакторе кода, IDE или файле. И он не будет работать, если не знать, как его правильно запускать.

В этом материале рассмотрим 7 способов запуска кода, написанного на Python. Они будут работать вне зависимости от операционной системы, среды Python или местоположения кода.

Где запускать Python-скрипты и как?

Python-код можно запустить одним из следующих способов:

  1. С помощью командной строки операционной системы (shell или терминал);
  2. С помощью конкретной версии Python или Anaconda;
  3. Использовать Crontab;
  4. Запустить код с помощью другого Python-скрипта;
  5. С помощью файлового менеджера;
  6. Использовать интерактивный режим Python;
  7. Использовать IDE или редактор кода.

Запуск Python-кода интерактивно

Для запуска интерактивной сессии нужно просто открыть терминал или командную строку и ввести python (или python3 в зависимости от версии). После нажатия Enter запустится интерактивный режим.

Вот как запустить интерактивный режим в разных ОС.

Интерактивный режим в Linux

Откройте терминал. Он должен выглядеть приблизительно вот так :

терминал Linux запуск python

После нажатия Enter будет запущен интерактивный режим Python.

Интерактивный режим в macOS

На устройствах с macOS все работает похожим образом. Изображение ниже демонстрирует интерактивный режим в этой ОС.

терминал MacOs запуск python

Интерактивный режим в Windows

В Windows нужно открыть командную строку и ввести python . После нажатия Enter появится приблизительно следующее:

терминал Windows запуск python

Запуск Python-скриптов в интерактивном режиме

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

Запуск Python-скриптов в интерактивном режиме

Этот код должен выводить целые числа от 0 до 5. В данном случае вывод — все, что появилось после print(i) .

Для выхода из интерактивного режима нужно написать следующее:

И нажать Enter. Вы вернетесь в терминал, из которого и начинали.

Есть и другие способы остановки работы с интерактивным режимом Python. В Linux нужно нажать Ctrl + D, а в Windows — Ctrl + Z + Enter.

Стоит отметить, что при использовании этого режима Python-скрипты не сохраняются в локальный файл.

Как выполняются Python-скрипты?

Отличный способ представить, что происходит при выполнении Python-скрипта, — использовать диаграмму ниже. Этот блок представляет собой скрипт (или функцию) Python, а каждый внутренний блок — строка кода.

При запуске скрипта интерпретатор Python проходит сверху вниз, выполняя каждую из них. Именно таким образом происходит выполнение кода.

Но и это еще не все.

Блок-схема выполнения кода интерпретатором

  • Шаг 1: скрипт или .py-файл компилируется, и из него генерируются бинарные данные. Готовый файл имеет расширение .pyc или .pyo.
  • Шаг 2: генерируется бинарный файл. Он читается интерпретатором для выполнения инструкций.

Это набор инструкций, которые приводят к финальному результату.

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

Это также пригодится для принятия решений в процессе. Можно обратить внимание на отдельные факторы и понять, почему определенные функции/структуры данных работают быстрее остальных.

Как запускать Python-скрипты?

Для запуска Python-скрипта с помощью командной строки сначала нужно сохранить код в локальный файл.

Возьмем в качестве примера файл, который был сохранен как python_script.py. Сохранить его можно вот так:

Сохранить скрипт в текстовом редакторе достаточно легко. Процесс ничем не отличается от сохранения простого текстового файла.

Но если использовать командную строку, то здесь нужны дополнительные шаги. Во-первых, в самом терминале нужно перейти в директорию, где должен быть сохранен файл. Оказавшись в нужной папке, следует выполнить следующую команду (на linux):

После нажатия Enter откроется интерфейс командной строки, который выглядит приблизительно следующим образом:

интерфейс командной строки

Теперь можно писать код и с легкостью сохранять его прямо в командной строке.

Обычно вы видите EXE-файл при установке нового программного обеспечения или запуске программы на вашем ПК, где используется расширение EXE. Если вы создаете собственное программное обеспечение, вы даже можете создать свой собственный исполняемый файл для запуска, установки или распространения. Если вам интересно узнать больше об исполняемых файлах и о том, как создать исполняемый файл, вот что вам нужно сделать.


Риски исполняемых файлов (EXE)

Когда вы запускаете исполняемый файл, вы даете ему разрешение на выполнение содержащихся в нем инструкций. Так работает любое программное обеспечение, от простых сценариев из нескольких строк до сложного программного обеспечения с миллионами строк кода.

Прежде чем запускать или создавать исполняемый файл, вы должны знать о потенциальных рисках. Исполняемые файлы могут содержать в исходном коде инструкции, которые могут повредить ваш компьютер.


Перед запуском любого исполняемого файла, особенно если он запрашивает административные разрешения в Контроль учетных записей пользователей всплывающее окно, вы должны просканировать файл на наличие вредоносных программ с помощью Windows Security или вашего собственного стороннего антивирусного программного обеспечения, такого как Malwarebytes. Вам также следует устанавливать или запускать программное обеспечение только из источников, которым вы абсолютно доверяете.

Если вы создаете собственное программное обеспечение для запуска, вы должны убедиться, что код не предназначен для доступа к каким-либо важным файлам. Хотя Windows обычно предотвращает несанкционированный доступ к системным файлам с помощью UAC, дважды проверьте свой код перед запуском, чтобы убедиться, что программное обеспечение не может нанести вред вашему ПК.

Открытие исполняемых файлов (EXE) в Windows

Если вы хотите открыть исполняемый файл в Windows, вы можете сделать это несколькими способами. Windows автоматически распознает формат EXE-файла как исполняемый файл, поэтому обычно вы можете открыть его со своего рабочего стола, из проводника Windows, с помощью меню «Пуск» Windows (для установленного программного обеспечения) или с помощью командного окна «Выполнить».

  • Чтобы открыть EXE-файлы на рабочем столе или в проводнике Windows, дважды щелкните файл. Это проинструктирует Windows открыть его.


  • Список установленного программного обеспечения в меню «Пуск» Windows представляет собой ярлыки EXE-файлов для этого программного обеспечения (например, Chrome.exe для Google Chrome). Нажмите значок меню «Пуск» (или нажмите клавишу Windows на клавиатуре), затем нажмите одну из записей, чтобы запустить программное обеспечение.


  • Чтобы использовать командное окно «Выполнить» для запуска EXE-файла, нажмите клавиши Windows + R на клавиатуре. Либо щелкните правой кнопкой мыши значок меню «Пуск» и выберите «Выполнить».


  • В поле команды «Выполнить» найдите исполняемый файл, нажав кнопку «Обзор», или введите расположение файла напрямую. Если вы хотите запустить EXE-файл, нажмите ОК.


  • Если EXE-файл запрашивает административный доступ, вам необходимо разрешить его запуск во всплывающем окне UAC. Нажмите Да, чтобы разрешить это.



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

Если вы хотите создать свои собственные исполняемые файлы в Windows, вы можете, но это не так просто, как переименовать файл и добавить .exe в его конец.

Вам нужно будет закодировать программное обеспечение, которое вы хотите запустить, на выбранном вами языке программирования, а затем скомпилировать его как файл, который можно будет выполнить. Однако большинство пользователей захотят создать более простые исполняемые файлы, такие как файлы установщика для установки программного обеспечения.


EXE-файл, созданный с помощью 7-Zip, на самом деле является файлом архива SFX. Этот архивный файл в формате EXE автоматически извлекает все включенные файлы на ваш компьютер, что делает его идеальным для простого развертывания программного обеспечения.

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

  • Чтобы создать EXE-файл с помощью 7-ZIP, поместите файлы в папку в проводнике Windows. Щелкните папку правой кнопкой мыши, затем нажмите 7Zip> Добавить в архив.


  • В поле «Параметры» установите флажок «Включить архив SFX». Вы также захотите установить формат архива на 7z, метод сжатия на LZMA2 и уровень сжатия на нормальный. Нажмите ОК, чтобы создать файл.


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

В противном случае, если вы хотите создать «настоящий» исполняемый файл, вам потребуется научиться программировать.

Запуск исполняемых файлов на Mac или Linux

То, как исполняемые файлы работают в Windows, полностью отличается от того, как программы работают на других платформах, таких как Linux или macOS. На этих платформах есть исполняемые файлы, но они не в формате EXE.

В Linux, например, любой файл может быть исполняемым, но для его запуска в качестве программы с использованием chmod требуется специальный флаг разрешений. Например, команда chmod + x file предоставит файлу с именем file разрешение на выполнение.

В macOS есть несколько иной метод запуска программного обеспечения. Если приложение не было установлено из App Store, и оно не от разработчика, которого он знает или которому доверяет, то приложение не будет запущено. Вам нужно будет разрешить это в меню «Системные настройки»> «Безопасность и конфиденциальность».


Однако как система на основе Unix macOS поддерживает команду chmod, что позволяет выполнять больше базовых сценариев с помощью приложения Terminal. Если вы, например, разработали сценарий Python, вы можете использовать команду chmod + x для его запуска.

Вы также можете использовать эмулятор WINE для Linux и macOS для запуска и установки EXE-файлов Windows на этих платформах. Разработанный для эмуляции определенных инструкций и библиотек Windows, использование WINE для запуска EXE-файла будет иметь разный уровень успеха.

Вы можете проверить, насколько популярное программное обеспечение будет работать с WINE, проверив База данных WineHQ.

Запуск исполняемых файлов в Windows 10

Ничто не мешает вам создавать собственное программное обеспечение, особенно если вы объедините его с пакетами установщика Windows, чтобы упростить установку. Однако для большинства пользователей Windows 10 файлы EXE нужно запускать, а не создавать. Пока вы запускаете программное обеспечение только из источников, которым доверяете, исполняемые файлы должны быть относительно безопасными.

Убедитесь, что вы регулярно выполняете сканирование на наличие вредоносных программ, и, если вы действительно не уверены в том, безопасно ли запускать исполняемый файл, вы можете использовать режим песочницы Windows 10 для запуска программного обеспечения в изолированном контейнере, чтобы проверить его. Если EXE опасен, он не повредит вашу основную установку Windows.

Операционная система Linux, в отличие от Windows, определяет какие файлы являются программами не по расширению, а по специальному флагу исполняемости. У каждого файла есть три основных флага, чтение, запись и исполнение. Они определяют что система может делать с этим файлом.

Когда вы загружаете различные установщики программ из интернета или создаете скрипт в текстовом редакторе, для них устанавливаются флаги по умолчанию - только чтение и запись. Вы не сможете запустить такой файл как программу, с ним нужно сделать еще кое-что. В этой статье мы рассмотрим как сделать файл исполняемым в Linux.

Что такое исполняемость?

Уже много написано о том, как установить флаг исполняемости. Но что происходит с файлом во время этого, что такое исполянемость и как это работает?

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

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

Чтобы система могла определить какие файлы нужно выполнять, а какие лучше не надо и был придуман флаг исполняемости. По сути, флаг исполяемости - это несколько байт в файловой системе, которые говорят нужно выполнять файл или нет, само содержимое файла никак не изменяется. Со скриптами все работает точно так же, только команды из файла выполняет не процессор, а интерпретатор, например, в bash скриптах - сама оболочка bash. Да и в обычных программ тоже есть свой загрузчик - это ld-linux.so.2.

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

В операционной системе Linux, для управления флагами файлов используется утилита chmod. Синтаксис вызова утилиты:

$ chmod категория действие флаг адрес_файла

  • Категория - флаги могут устанавливаться для трех категорий: владельца файла, группы файла и всех остальных пользователей. В команде они указываются символами u (user) g (group) o (other) соответственно.
  • Действие - может быть + (плюс), что будет значить установить флаг или - (минус) снять флаг.
  • Флаг - один из доступных флагов - r (чтение), w (запись), x (выполнение).

Например, чтобы сделать исполняемый скрипт в linux для владельца файла, достаточно выполнить:

chmod u+x адрес_файла

bin1

Этого в большинстве случаев бывает достаточно, но если мы хотим чтобы файл могли выполнять и другие пользователи, нужно указать также другие категории: g и o:

chmod ugo+x адрес_файла

Посмотреть флаги в терминале можно с помощью утилиты ls:

ls -l каталог_с_файлами

bin2

Это значит, что все флаги включены для всех категорий. Первое rwx - флаги владельца, второе - группы, а третье - для всех остальных. Если флаг не установлен, на его месте будет прочерк.

Снять флаг исполняемого файла очень просто. Используется та же команда только со знаком минус:

chmod u-x адрес_файла

Как установить фалг исполняемости в GUI

Вы можете сделать файл исполняемым в linux не только через терминал. Такая функциональность есть во всех файловых менеджерах. Возможно, на первых порах это будет для вас проще. Рассмотрим на примере файлового менеджера GNOME, Nautilus. Кликните правой кнопкой по нашему файлу программы или скрипта, чтобы открыть контекстное меню, затем выберите свойства:

bin3

Дальше перейдите на вкладку права и установите галочку Разрешить выполнение файла как программы:

bin4

Готово, исполняемый файл linux может быть запущен системой, прямо из файлового менеджера.

Выводы

Вот и все, теперь вы знаете как сделать файл исполняемым в linux. И если нужно будет запустить скрипт или установщик из интернета, у вас не возникнет никаких проблем. Если остались вопросы, спрашивайте в комментариях!

Запуск программ в командной строке активирует целый механизм по поиску и выполнению этой программы. Очень важно понимать, как он работает, так как проблемы с запуском вновь установленных программ возникают регулярно у всех разработчиков.

Программа, независимо от того, что она делает, всего лишь файл или набор файлов на диске. Один из этих файлов обязательно должен быть исполняемым. Помните тот самый x из урока про права доступа? Так вот, выполнить программу можно только если она исполняемая, иначе попытка запустить её приведёт к ошибке.

Весь механизм по запуску программ в *nix-системах основан на соглашениях. Когда в командной строке вводится некоторая команда, например, ls , то шелл начинает поиск исполняемого файла с именем ls в списке директорий, указанном в переменной окружения PATH .

Директории друг от друга отделяются двоеточием. В этом списке присутствуют как общесистемные пути, так и пути, специфичные для конкретного пользователя. В вашем случае PATH будет другой. Процесс поиска программы выглядит следующим образом. Шелл перебирает директории слева направо и ищет ту, в которой есть файл ls , доступный для исполнения. Если такого файла не оказалось, то выводится ошибка:

Подчеркну, что важен порядок. Если файл с одним и тем же именем находится одновременно в нескольких директориях, то будет найден тот, который находится в директории, расположенной левее.

Если вам интересно узнать, а где лежит исполняемый файл конкретной программы, то можно воспользоваться командой type (а ещё which и whereis ):

По выводу выше видно, что cp принадлежит суперпользователю, но исполнять его могут все.

Обратите внимание на то, что почти все директории, в которых хранятся исполняемые файлы программ, оканчиваются на bin . Это общее соглашение, говорят "бинарники" (формально там не всегда бинарники, но это не принципиально). Пакетные менеджеры знают про эти директории и во время установки программ переносят их бинарники в одну из директорий, входящих в PATH . Для вновь устанавливаемых программ обычно это /usr/local/bin . Иногда возникает необходимость расширить PATH , особенно в случае установки через пакетные менеджеры языков программирования, но делать это надо осторожно, убедившись в том, что по-другому нельзя.

В некоторых ситуациях программа, которую вы хотите запустить, не лежит по путям поиска (прописанным в PATH ) и не должна там оказаться. Если её исполняемый файл находится прямо в текущей директории, то логично предположить, что если набрать имя файла и запустить его, то программа выполнится. На самом деле этого не произойдёт.

Такое поведение сделано в целях безопасности. Ведь возможно вы хотели запустить какую-то стандартную программу, а злоумышленник положил в текущую директорию программу с таким же именем, но делающую что-то плохое. По этой причине, прямой запуск программ всегда должен быть путём до файла, например path/to/executable/file . А если файл лежит в текущей директории? Вот тут-то нам и поможет обращение через точку ./ :

Изменение переменной PATH

В общем случае не рекомендуется делать это самостоятельно. При правильной установке, большинство программ самостоятельно добавляют свои исполняемые файлы в нужные места. В некоторых случаях они показывают подсказки, как это сделать сразу после установки.

  • .bashrc
  • .bash_profile
  • .profile

В зависимости от настроек терминала, Bash прогружает либо одни файлы, либо другие. Если в вашей домашней директории есть файл .bashrc, то пробуйте использовать его, если нет, то остальные файлы в том порядке, в котором они приведены выше. Добавьте в этот файл следующую строку:

Где /path/to/directory путь до директории с исполняемыми файлами.

Читайте также: