Ну, я новачок у Linux, і у мене проблема з простим скриптом bash.
У мене є програма, яка додає файл журналу під час роботи. З часом цей журнал стає величезним. Я хотів би створити сценарій запуску, який буде перейменовувати та переміщувати файл журналу перед кожним запуском, фактично створюючи окремі файли журналу для кожного запуску програми. Ось що я маю на даний момент:
DATE=$(date +"%Y%m%d%H%M")
mv server.log logs/$DATE.log
echo program
При запуску я бачу таке:
: command not found
program
Коли я відтворюю компакт-диск у каталозі журналів і запускаю каталог, я бачу таке:
201111211437\r.log\r
Що відбувається? Я припускаю, що у мене є якась проблема синтаксису, але я, здається, не можу цього зрозуміти.
ОНОВЛЕННЯ: Завдяки коментарю shellter нижче, я виявив, що проблема пов’язана з тим, що я редагую файл .sh у Notepad ++ у Windows, а потім надсилаю через ftp на сервер, де я запускаю файл через ssh . Після запуску dos2unix у файлі він працює.
Нове запитання: Як я можу спочатку правильно зберегти файл, щоб уникнути необхідності виконувати це виправлення кожного разу, коли я повторно надсилаю файл?
\ris carriage_return,