Пути доступа системы MATLAB
При поиске М-файлов или других файлов, хранящихся в вашей файловой структуре, MATLAB использует концепцию путей доступа (search path). Любой файл (функция), кото-рый вы хотите исполнить в системе MATLAB должен находится в директории, находящей-ся на путях доступа или в текущей директории. По умолчанию, все файлы поставляемые с MATLAB и соответствующими пакетами прикладных программ фирмы MathWorks вклю-чены в пути доступа. Если вы создаете какой-либо файл, предназначенный для использова-ния системой MATLAB, необходимо включить директорию, содержащую этот файл, в пути доступа системы MATLAB.
Внимание ! Если вы создаете свой собственный М-файл или модифицируете любой имею-щийся М-файл, поставленный с системой MATLAB, сохраняйте их в директории, которая не находится на пути $matlabroot/toolbox/matlab, где $matlabroot – корневая директория системы MATLAB на вашем компьютере. Если вы храните какие-либо свои файлы в дирек-тории $matlabroot/toolbox/matlab, они будут уничтожены при переустановке или установке новой версии MATLAB-а на вашем компьютере.
Суть концепции путей доступа. Все используемые вами файлы рассматриваются как нахо-дящиеся на путях доступа системы MATLAB. Когда вы включаете новую директорию в пути доступа, вы добавляете ее к имеющимся путям. Поддиректории (subdirectories) должны быть добавлены в пути доступа явным образом; они не включаются в пути доступа автоматически, при включении их родительских директорий. Пути доступа системы MATLAB хранятся в файле pathdef.m. Порядок расположения директорий на путях доступа имеет существенное значение. Система MATLAB ищет любой объект (переменную, функцию и т.д.), например, названный foo, следующим образом. Если вы вводите foo в командной строке, то система MATLAB выполняет следующие действия:
1. Ищет foo как переменную.
2. Проверяет, не является ли foo встроенной функцией.
3. Ищет в текущей директории файл названный foo.m.
4. Ищет по очереди во всех директориях на пути доступа MATLAB файл foo.m.
Хотя в действительности схема поиска является более сложной, эта упрощенная схема явля-ется достаточно точной для обычных М-файлов, с которыми имеет дело потребитель.
Порядок расположения директорий на путях доступа важен именно потому, что могут быть несколько файлов, имеющих одинаковое имя. Когда MATLAB ищет такую функцию, он вы-бирает только первую функцию, встретившуюся на путях доступа; остальные функции (фай-лы) оказываются в тени и не могут быть выполнены. Для того чтобы узнать какая функция выполняется, т.е. местоположение данной функции в файловой структуре, можно использо-вать команду which FileName, где FileName – имя выбранной функции.
Просмотр и изменение путей доступа. Для просмотра и изменения путей доступа системы MATLAB предусмотрено диалоговое окно Set Path, а также ряд эквивалентных команд (фу-нкций), которые можно выполнить из командной строки. Для открытия указанного окна ну-жно выбрать опцию Set Path из меню File рабочего стола, или ввести команду pathtool из командной строки MATLAB –а. Откроется следующее диалоговое окно
При нажатии на эти кнопки происходят изменения
в путях доступа текущего сеанса, но эти пути доступа
не сохраняются автоматически дл будущих сеансов
Кнопки для изменения
путей доступа Директории текущих путей доступа системы MATLAB
Рис. 5. Диалоговой окно Set Path для модификации путей доступа
На рис. 5 имеем следующие кнопки:
Add with Subfolders… - Добавить директорию с поддиректориями.
Move to Top - Перенести директорию в начало пути.
Move Up - Перенести директорию на один шаг вверх.
Remove - Удалить директорию.
Move Down - Перенести директорию на один шаг вниз.
Move to Bottom - Перенести директорию в конец пути.
Default - Восстановить исходные пути доступа (по умолчанию).
Назначение данных кнопок ясно из их названий.
При операциях над файлами система MATLAB использует текущую директорию в качестве отправной точки. Любой файл, который вы хотите исполнить, должен находиться или в теку-щей директории (каталоге) или на пути доступа системы MATLAB. Аналогично, если вы хотите открыть какой-либо файл, начальной точкой диалогового окна Оpen всегда является текущая директория.
Поле текущей директории. Быстрый путь просмотра или изменения текущей директории состоит в использовании поля Current Directory (Текущая Директория) в инструментальной панели рабочего стола
Для изменения текущей директории из этого поля, нужно выполнить одно из следующих действий:
• Впечатать в данное поле путь к новой текущей директории.
• Щелкнуть на правой кнопке со стрелкой, что откроет список ранее использованных рабо-чих директорий, и выбрать из них желаемую.
• Щелкнуть на кнопку (...) (см. рис. 2) для выбора новой директории.
Окно Просмотра Текущего Каталога (Current Directory Browser) . Для поиска, просмот-ра, открывания и ввода изменений в директориях системы MATLAB можно воспользоваться Окном Просмотра Текущего Каталога (ОПТК). Все основные функции данного окна можно также выполнить задавая соответствующие команды из командной строки системы MATLAB. Если ОПТК не присутствует в рабочем столе MATLAB-а, то его можно открыть выбором опции Current Directory в меню View, или же введя команду filebrowser из коман-дного окна (Command Window). При этом появится следующее окно
Данное поле позволяет произвести быстрый
просмотр и изменение директорий
любого М-файла (операция поиска по заданным символам)
Рис. 6. Окно просмотра текущего каталога
Двойной щелчок по любому выделенному файлу откроет его содержание в соответствующем окне Редактора/Отладчика. В нижней части ОПТК (см. рис. 6) показана часть справки (help) для выделенного файла.
Изменение текущей директории и просмотр ее содержания в ОПТК. Для изменения теку-щей директории из ОПТК можно воспользоваться полем Current Directory этого окна, со-вершенно аналогично тому, как это было описано выше.
Эквивалентные функции ! Команда dir выводит в командное окно все содержимое теку-щей директории или любой другой директории, заданной как аргумент функции dir. Кома-нда what действует аналогично, но выводит только те файлы, которые относятся к системе MATLAB. Команда which FileName, где FileName – имя файла, выводит путь доступа к данному файлу.
ОПТК позволяет также произвести любые добавление директорий к путям доступа системы MATLAB, а также создавать, копировать, переименовывать директории и т.д. (см. Руковод-ство Пользователя).
Поиск и замена содержимого файлов. Из ОПТК можно осуществить поиск любой заданной строки символов в содержании файла. Если же файл открыт в окне Редактора/Отладчика, то можно также и заменить заданную строку на другую.
Поиск заданной строки в пределах файла (файлов). Для поиска заданной строки следует:
1. Щелкнуть по кнопке
2. Для нахождения всех случаев наличия требуемой строки в файлах следует:
- Впечатать строку в поле Find what.
- Выбрать директорию поиска в поле Look in, или просто непосредственно напечатать имя директории в данном поле.
- Ограничить поиск выбором опций Match case (Учитывать регистр) и Whole word (Слово целиком).
- Выбрать опцию Subdirectories (Поддиректории), если вы хотите также просматривать и файлы в поддиректориях.
3. Щелкнуть по кнопке Find.
Результат поиска при этом будет отображен в нижней части далогового окна Find & Replace как это показано на следующем рисунке. Этот результат включает название файла, номер со- ответствующей строки и содержимое данной строки.
Двойной щелчок по файлу приведет к
его открытию
Кнопка закрытия окна
Результаты предыдущих операций поиска результатов поиска
доступны через эти ярлыки
4. Для открытия любого из М-файлов в списке результатов поиска нужно выполнить одно из нижеприведенных действий:
- Дважды щелкнуть по файлу.
- Выделить файл и нажать клавишу Enter.
- Щелкнуть правой кнопкой по файлу и выбрать опцию Open из контекстного меню.