2014-02-20 3 views
1

В сценарии Баша, можно сделать следующее:Выполнить команду Linux «кот» внутри MatLab скрипта

cat > my.txt << EOF 
     bla-bla-bla 
     bla-bla-bla 
     bla-bla-bla 
    EOF 

Есть ли способ, которым я мог бы выполнить эту команду внутри MatLab м-файл? Я думаю о system, но, похоже, он принимает только простые однострочные системные команды.

+0

Не могли бы вы также использовать встроенные функции Matlab для объединения строк? – Deve

+0

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

ответ

2

Вы можете создать системную команду, которая содержит переносы строк с sprintf:

system_command = sprintf('cat > my.txt << EOF\n'); 
system_command = sprintf('%s\nbla-bla-bla', system_command); 
system_command = sprintf('%s\nbliblablub', system_command); 
system_command = sprintf('%s\nEOF', system_command); 
system(system_command); 
Смежные вопросы