Контекст this
внутри вашего метода options.query
на самом деле не ссылается на экземпляр Vue, но на контекст самого метода, чтобы обойти это, вы можете назначить локальную переменную текущему экземпляру.
new Vue({
el: '#app',
created() {
this.sentData = 'Some initial value';
},
data() {
const vm = this;
return {
sentData: '',
options: {
query(uploaderFile, uploaderChunk) {
return {
sentData: vm.sentData
}
}
}
}
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="app">
<span v-text="options.query().sentData"></span>
</div>
Если не будет никаких файлов в каталоге, то подстановочный знак не будет расширен и будет передан команде непосредственно. Нет никакого файла, названного "*", и затем сбои команды с "Файлом или каталогом, не найденным". Попробуйте это вместо этого:
if [ -f /home/user/Maildir/.SPAM/cur/* ]; then
rm /home/user/Maildir/.SPAM/cur/*
fi
Или просто используйте флаг "-f" для комнаты. Другая проблема с этой командой - то, что происходит, когда существует слишком много спама для максимальной длины командной строки. Что-то вроде этого, вероятно, лучше в целом:
find /home/user/Maildir/.SPAM/cur -type f -exec rm '{}' +
Если у Вас есть старая находка что только исполнительная комната один файл за один раз:
find /home/user/Maildir/.SPAM/cur -type f | xargs rm
Это обрабатывает слишком много файлов, а также никакие файлы. Благодаря Charles Duffy для указания + опция к - должностное лицо в находке.
Попытайтесь использовать опцию силы и забудьте о добавлении пути к команде комнаты. Я думаю, что это не должно быть необходимо...
rm -f
Это гарантирует, что, даже при отсутствии файлов в каталоге, команда комнаты не перестанет работать. Если это - часть сценария оболочки, * должен работать. Это смотрит на меня, что у Вас мог бы быть пустой dir...
Я понимаю, что остальная часть сценария выполняется, правильно?
Вы указываете полный путь к сценарию в cronjob?
00 3 * * * /home/me/myscript.sh
вместо
00 3 * * * myscript.sh
На другой ноте это-/bin/rm на всех полях Linux, к которым у меня есть доступ. Вы перепроверили это, это действительно-/usr/bin/rm на Вашей машине?
попытайтесь добавить
MAILTO=your@email.address
к вершине Вашего файла крона и необходимо получить любой вход/ошибки, отправленный по почте Вам.
Также рассмотрите добавление команды как cronjob
0 30 * * * /usr/bin/rm /home/user/Maildir/.SPAM/cur/*