Найти и переместить команду в Unix, выдающую ошибку

Когда я запускаю эти запросы вручную, выдает ошибку.

Фактическая команда в скрипте:

find $TMPDIR/tmp0 -name "*.W080" -type d -exec mv -f {} $TMPDIR/w0 \; 
find $TMPDIR/w0 -name "*.TIF" -type f -exec mv -f {} $FINALDIR/$DATE/W080-RF \;

Выдает ошибку во время выполнения:

find: 0652-081 cannot change directory to </sapxchange/OPENTEXT/Symcor/tmp/tmp0/batch.B75355.L9135.D20150326.T022818.W080>:
: A file, file system or message queue is no longer available.
find: 0652-081 cannot change directory to </sapxchange/OPENTEXT/Symcor/tmp/tmp0/batch.B75356.L9135.D20150326.T022818.W080>:
: A file, file system or message queue is no longer available.

PS - Обратите внимание, что даже после того, как вышеупомянутая ошибка появляется во время выполнения, задание завершается и обрабатывает данные...

1 ответ

Я думаю, что поиск ищет файлы в подкаталогах /sapxchange/OPENTEXT/Symcor/tmp/tmp0/batch.B75355.L9135.D20150326.T022818.W080 и вдруг весь каталог был удален.
Так что находка не понимает, где находится поиск.

Когда все файлы W080 находятся на одном уровне, попробуйте без find:
mv -f $TMPDIR/tmp0/*.W080 $TMPDIR/w0

Другие вопросы по тегам