Задания, запущенные из cron, не имеют управляющего tty или дисплея. Я собираюсь предположить, что у вас есть реальные числа вместо MIN
и HOUR
?
Попробуйте добавить опцию -display
.
0 15 * * * /usr/bin/mplayer -display localhost.localdomain:0 PATH_TO_THE_FILE > /dev/null 2>&1
Возможно, вам придется настроить аргумент -display
для вашего конкретного сервера.
Использование команды rename
, предоставленной util-linux
, отличается от того, что указано в ответе, который вы указали. В частности, для этого требуются отдельные аргументы from
и to
, а не одна команда замены стиля sed --, отсюда и сообщение об ошибке not enough arguments
.
SYNOPSIS
rename [options] expression replacement file...
Так что в этом случае вам понадобится
find. -name $'*\n*' -exec rename $'\n' ' ' {} \;
См. также:
и для простого сравнения использования
Убедитесь, что вы используете один из вариантов rename
на основе perl
-, иногда называемый prename
, а не вариант из util-linux
(, иногда называемыйrename.ul
).
Вариант из util-linux
намного более ограничен (, несмотря на то, что он намного новее ), использует другой синтаксис, может заменять только фиксированные строки и не может заменять все вхождения строки.
Здесь я бы использовал варианты perl rename
, убедитесь, что вы конвертируете символы новой строки только в именах файлов,а не компоненты каталога, ведущие к ним, и используйте -depth
для обработки листьев перед ветвями.
perl
распознает \n
как символ новой строки, поэтому вам не нужно использовать $'...'
в качестве аргумента кода (, хотя это нормально, если вы делаете вопреки тому, что я изначально думал ).
find. -depth -name $'*\n*' -exec rename '
s{[^/]*\z}{$& =~ y/\n/ /r}e' '{}' +
Или используйте -execdir
, если доступно (, хотя это будет запускать по крайней мере один rename
в каталоге с файлами с \n
в пределах):
find. -depth -name $'*\n*' -execdir rename 'y/\n/ /' {} +
Или вы можете использовать zsh
'szmv
:
autoload zmv
NL=$'\n'
zmv "(**/)(*$NL*)(#qD)" '$1${2//$NL/ }'
(, который, в отличие от подходов, основанных на find
-, будет по-прежнему работать, даже если имена файлов содержат последовательности байтов, которые не образуют допустимых символов. Он также отключится без каких-либо действий, если обнаружит конфликт ).