![matlab 스크립트를 실행하는 쉘 스크립트를 실행하기 위해 Linux "at" 명령을 올바르게 사용하는 방법은 무엇입니까?](https://linux55.com/image/162203/matlab%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EB%A5%BC%20%EC%8B%A4%ED%96%89%ED%95%98%EB%8A%94%20%EC%89%98%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EB%A5%BC%20%EC%8B%A4%ED%96%89%ED%95%98%EA%B8%B0%20%EC%9C%84%ED%95%B4%20Linux%20%22at%22%20%EB%AA%85%EB%A0%B9%EC%9D%84%20%EC%98%AC%EB%B0%94%EB%A5%B4%EA%B2%8C%20%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
다음 쉘 스크립트가 있습니다.
#!/bin/bash
matlab -nodisplay -nosplash -nodesktop -r "run('/home/username/test.m');exit;"
test.m 스크립트는 그래프를 그리고 그래프를 표시하지 않고 그래프를 pdf로 저장하는 matlab 스크립트입니다. test.m 스크립트의 내용은 다음과 같습니다.
% This is a matlab script to test with *at* execution.
t1=[1 2 3];
t2=[1 2 3];
plot(t1,t2)
set(gcf,'Visible','off')
print('-bestfit','/home/username/image','-dpdf')
내가 원하는 것은 특정 시간에 실행되도록 쉘 스크립트를 예약하는 것뿐입니다. 따라서 "at" 명령을 다음과 같이 사용합니다.
echo "run_matlab_script.sh" | at 15:00
그런데 시간이 15시에 도달하면 스크립트가 실행되지 않는 것 같습니다. 또한 스크립트 경로를 포함하려고 시도했지만 "at"이 작동하지 않았습니다.
또한 이 링크의 지침을 따랐습니다.
https://tecadmin.net/one-time-task-scheduling-using-at-commad-in-linux/
"at"을 올바른 방식으로 사용하고 있나요? 스크립트 실행을 예약하는 대안이 있습니까? 이렇게 하면 source run_matlab_script.sh
스크립트가 문제 없이 실행됩니다.
쉘 스크립트의 경우 다음 권한을 부여합니다.
chmod +x run_matlab_script.sh
감사해요!