Eh bien, je suis un linux débutant, et je vais avoir un problème avec un simple script bash.
J'ai un programme qui s'ajoute à un fichier journal en cours d'exécution. Au fil du temps que le fichier de journalisation est énorme. J'aimerais créer un script de démarrage qui va renommer et déplacer le fichier journal avant chaque course, ce qui crée des fichiers journaux distincts pour chaque exécution du programme. Voici ce que j'ai obtenu jusqu'à présent:
DATE=$(date +"%Y%m%d%H%M")
mv server.log logs/$DATE.log
echo program
Lorsque vous exécutez, je vois ceci:
: command not found
program
Quand je cd vers le répertoire de journaux et d'exécuter dir, je vois ceci:
201111211437\r.log\r
Ce qui se passe? Je suis en supposant qu'il certains de la syntaxe question qui me manque, mais je n'arrive pas à le comprendre.
Mise à JOUR: Grâce à shellter de commentaire ci-dessous, j'ai trouvé que le problème soit dû au fait que je suis en train de monter la .sh fichier dans Notepad++ sous windows, puis de les envoyer via ftp sur le serveur, lorsque je lance le fichier via ssh. Après l'exécution de dos2unix sur le fichier, il fonctionne.
Nouvelle question: Comment puis-je enregistrer le fichier correctement en premier lieu, pour éviter d'avoir à effectuer cette correction à chaque fois que je renvoyer le fichier?