Подскажите, почему не отрабатывается команда Linux? Делаю по этому документу: RaspberryCodesysV3Faq.pdf пункт 14: "Как вызвать Python-скрипт из программы CodeSys?"
1. Создал файл file.py и включил его в проект. После запуска будет создан тестовый файл "new_test_file.txt" с записью "Hello, world"
Скрытый текст:
Файл file.py:
Код:
f = open('new_test_file.txt', 'a')
f.write('Hello, world\n')
f.close()
2. Сделал проект:
Скрытый текст:
Код:
IF xExecuteScript THEN
SysProcess.SysProcessExecuteCommand('sudo python3 /var/opt/codesys/PlcLogic/Application/file.py', pResult);
xExecuteScript := FALSE;
bFlag := TRUE;
END_IF
Но непонятно отрабатывает ли он или нет. Тестовый файл "new_test_file.txt" не создается. bFlag переходит в состояние TRUE. Т.е. условие отработалось.
Права на исполнение дал (chmod).
Если просто в терминале набрать "sudo python3 /var/opt/codesys/PlcLogic/Application/file.py", то отрабатывает нормально (появляется тестовый файл).
А внутри проекта CodeSys не отрабатывает.
Что я делаю не так?
потому что слишком сложно. SysProcess.SysProcessExecuteCommand('sudo "Hello, world\n" > new_test_file.txt', pResult); так тоже должно сработать
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран