Скрипт бесконечного цикла в openwrt?

Я был на форуме openwrt, и у меня был пользователь, который помог мне с созданием скрипта, но у меня возникли проблемы с ним.

По сути, у меня есть маршрутизатор openwrt с подключенным микрофоном, и я хочу автоматически записывать в течение дня. Он сказал мне попробовать цикл while. Я взял цикл while и только что попробовал команду arecord, которая правильно помечает файл, но по какой-то причине ставит ? в конце имени файла, вроде 2013-02-10-12:20:10.wav? кажется, это мешает мне передать его через ftp.

Я получаю сообщение об ошибке «неожиданный конец файла», ожидая «готово» или что-то в этом роде.

    while true
    do
      echo "recording started"
      arecord -f cd -d 10 `date +"%Y-%m-%d-%T"`.wav
    done

person andyADD    schedule 10.02.2013    source источник
comment
этого не должно быть. Попробуйте включить отладку оболочки с помощью set -vx и посмотрите, не произойдет ли что-нибудь бессмысленное. Удачи.   -  person shellter    schedule 11.02.2013
comment
Кроме того, указывает ли ? в конце файла, что он все еще записывает? Какой аргумент в вашей записи выше указывает только на запись в течение X времени? ИЛИ Вы работаете на чем-то, что связано с Windows? Windows не позволит вам отправлять сообщения с открытыми файлами. В настоящей среде Linux наличие '?' в имени файла не должно быть проблемой, но ftp-клиент может потребовать, чтобы вы использовали параметр для отключения расширения имени файла. Есть несколько мест, где это может быть проблемой, поэтому самое быстрое решение — создать небольшие тестовые примеры, чтобы увидеть, где проблема. Удачи.   -  person shellter    schedule 11.02.2013
comment
Shelltor, -d 10 означает продолжительность 10 секунд.   -  person andyADD    schedule 11.02.2013


Ответы (1)


Это работает, я проверил следующее на регулировке отношения OpenWRT r35725

root@openwrt3:/# cat file 
while true
do
  echo `date +"%Y-%m-%d-%T"`
done
root@openwrt3:/# ./file 
2013-02-22-18:40:01
2013-02-22-18:40:01
2013-02-22-18:40:01
2013-02-22-18:40:01
2013-02-22-18:40:01
2013-02-22-18:40:01
2013-02-22-18:40:01
2013-02-22-18:40:01
2013-02-22-18:40:01
2013-02-22-18:40:01
2013-02-22-18:40:01
2013-02-22-18:40:01
2013-02-22-18:40:02
^C
root@openwrt3:/# 
person Saverio Proto    schedule 22.02.2013