Дата и другие команды больше не работают в скрипте 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, и будьте осторожны при следующей загрузке.