Проверьте, открыт ли файл в Matlab - PullRequest
1 голос
/ 02 января 2012

Я загружаю несколько больших файлов (2 ГБ), а также запускаю скрипт Matlab, который распаковывает данные и выполняет какое-то моделирование, этот скрипт выполняется как cronjob, а иногда cronjob запускается до завершения загрузки,Как я могу проверить в Matlab, открыт ли файл (загрузка и запись)?

Ответы [ 2 ]

4 голосов
/ 02 января 2012

Я думаю, вы должны использовать .lock файл ...

Ваш cronjob должен создать файл .lock перед началом загрузки и удалить после того, как это будет сделано.

Ваш сценарий matlabможете проверить, есть ли файл .lock, чтобы узнать, используется ли файл cronjob.

2 голосов
/ 02 января 2012

Несмотря на то, что вы могли бы запутаться в /proc/*/fds, чтобы найти файл, такое решение было бы непрактичным, подверженным ошибкам и требовало бы, чтобы загрузчик и скрипт matlab работали от одного и того же пользователя.Вместо этого просто загрузите во временный каталог или файл и m o v e файл после завершения загрузки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...