2014-02-12 2 views
2

Мне нужно было бы найти все места в моем коде (несколько M файлов в папке), где я использовал определенную функцию (unique в этом случае).найти функцию в коде MATLAB

Знаете ли вы, если это возможно?

+0

возможно дубликат [Инструмент для рекурсивного поиска всех файлов в каталоге для строки] (http://stackoverflow.com/questions/1266796/tool-to-recursively-search-all-files-in-a-directory-for-a-string) или более старая версия с лучшими ответами: http://stackoverflow.com/questions/317944/tools-to -search-for-strings-inside-files-without-indexing – Dan

+1

Если тег 'Matlab' имеет смысл, то это не точные дубликаты. – Jonas

ответ

6

В Matlab , есть команда «Найти файлы» - в меню «Редактировать» или на ленте «Главная» и «Редактор», которая позволяет находить файлы, содержащие определенный текст, либо в папке, либо на всем пути Matlab:

enter image description here

3

использовать «Найти в файлах» функцию в Notepad++

+1

Я запускаю ubuntu ... – gabboshow

+0

, тогда используйте команду grep -r имя_функции * .m – paghdv

+0

yep, который работает спасибо! – gabboshow

0

«который» кажется, чтобы сделать это.

Взгляните на это: http://www.mathworks.co.uk/help/matlab/ref/which.html (первый пример)

В противном случае, Notepad ++ позволяет искать (и заменить) несколько файлов для текстовой строки, вот простой учебник: http://www.makeuseof.com/tag/how-to-find-and-replace-words-in-multiple-files/

+0

'' 'только позволяет вам находить функции, а не экземпляры внутри файлов, где вызываются определенные функции. – Jonas

1

Если вы хотите проверить, какие функции вы используете, depfun позволяет это сделать, хотя это может быть излишним, если вы хотите проверить только одну известную функцию.

Например (проверка функции, вызываемую непосредственно только функция):

[list builtins] = depfun(fun, '-toponly'); 
Смежные вопросы