Spec-Zone.ru › Octave 9

2.6 Исполняемые программы Octave

После изучения Octave вы можете захотеть написать автономные сценарии Octave, используя механизм сценариев «#!». Это можно сделать в системах GNU и во многих системах Unix 1.

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

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

#! octave-interpreter-name -qf
# a sample Octave program
printf ("Hello, world!\n");

(где octave-interpreter-name следует заменить полным путем и именем исполняемого файла Octave). Обратите внимание, что это будет работать, только если «#!» находится в самом начале файла. Сделав файл исполняемым (с помощью команды chmod в системах Unix), вы можете просто ввести:

hello

в командной оболочке, и система запустит Octave так, как если бы вы ввели:

octave hello

Строка, начинающаяся с «#!», содержит полный путь и имя файла интерпретатора, который нужно запустить, а также необязательный начальный аргумент командной строки, передаваемый этому интерпретатору. Затем операционная система запускает интерпретатор с указанным аргументом и полным списком аргументов выполняемой программы. Первый аргумент в списке — это полное имя файла исполняемого файла Octave. Остальные аргументы могут быть параметрами Octave, файлами данных или тем и другим одновременно. Параметры «-qf» обычно указываются в автономных программах Octave, чтобы отключить вывод стандартного приветственного сообщения и предотвратить изменение поведения программы в зависимости от содержимого файла ~/.octaverc конкретного пользователя. См. раздел Запуск Octave из командной строки.

Обратите внимание, что в некоторых операционных системах может быть ограничено число символов, распознаваемых после «#!». Кроме того, аргументы в строке «#!» по-разному разбираются различными командными оболочками и системами. Большинство из них объединяют все аргументы в одну строку и передают ее интерпретатору как один аргумент. В таком случае следующий сценарий:

#! octave-interpreter-name -q -f # comment

эквивалентен вводу в командной строке:

octave "-q -f # comment"

что приведет к сообщению об ошибке. К сожалению, Octave не может определить, был ли он вызван из командной строки или из сценария «#!», поэтому при использовании механизма «#!» следует соблюдать осторожность.

  • Передача аргументов исполняемым сценариям
  • Исполняемые сценарии двойного назначения и функции Octave

© 1996–2026 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v9.4.0/Executable-Octave-Programs.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API