Дата и другие команды больше не работают в скрипте sh

У меня есть сценарий оболочки, который раньше запускал find в Ubuntu 10.04, но, поскольку я перешел на 12.04, он не работает, как раньше, выдает следующие сообщения:

/home/checks.sh: 1: /home/checks.sh: date
: not found
find: invalid mode `0777\r'

скрипт выглядит следующим образом:

date
echo ""
echo "Files changed in the last 24 hours"
echo "=================================="
find /var/www -mtime -1 | grep -iv '.log'
echo ""
echo ""
echo "Files with permissions set to 777"
echo "================================="  
find /var/www -perm 0777

все строки работают из командной строки, но больше не в скрипте оболочки.

Не могу найти что-нибудь в руководстве, чтобы предположить, почему.

1 ответ

Решение

Ваш файл имеет окончания строки в стиле Windows.

использование dos2unix или аналогичные утилиты для преобразования в конец строки Linux, и будьте осторожны при следующей загрузке.

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