Le script Shell ne fonctionne pas, commande non trouvée

Je suis très, très nouveau sous UNIX programmation (en cours d'exécution sur Mac osx Mountain Lion via le Terminal). J'ai appris les bases à partir d'un bio-informatique et méthodes moléculaires cours (nous avons eu deux classes) où nous seront éventuellement à l'aide de perl et python pour les données à des fins de gestion. De toute façon, nous avons été chargés de la rédaction d'un script shell de prendre les données d'un groupe de fichiers et de les écrire dans un nouveau fichier dans un format qui peut être lu par un programme spécifique (Migrer-N).

J'ai obtenu un certain nombre de fonctions pour faire exactement ce dont j'ai besoin, indépendamment, quand je tape dans la ligne de commande, mais quand je les ai mis tous ensemble dans un script et essayez de le lancer, j'obtiens une erreur. Voici les détails (je m'excuse pour la longueur):

#! /bin/bash
grep -f Samples.NFCup.txt locus1.fasta > locus1.NFCup.txt
grep -f Samples.NFCup.txt locus2.fasta > locus2.NFCup.txt
grep -f Samples.NFCup.txt locus3.fasta > locus3.NFCup.txt
grep -f Samples.NFCup.txt locus4.fasta > locus4.NFCup.txt
grep -f Samples.NFCup.txt locus5.fasta > locus5.NFCup.txt
grep -f Samples.Salmon.txt locus1.fasta > locus1.Salmon.txt
grep -f Samples.Salmon.txt locus2.fasta > locus2.Salmon.txt
grep -f Samples.Salmon.txt locus3.fasta > locus3.Salmon.txt
grep -f Samples.Salmon.txt locus4.fasta > locus4.Salmon.txt
grep -f Samples.Salmon.txt locus5.fasta > locus5.Salmon.txt
grep -f Samples.Cascades.txt locus1.fasta > locus1.Cascades.txt
grep -f Samples.Cascades.txt locus2.fasta > locus2.Cascades.txt
grep -f Samples.Cascades.txt locus3.fasta > locus3.Cascades.txt
grep -f Samples.Cascades.txt locus4.fasta > locus4.Cascades.txt
grep -f Samples.Cascades.txt locus5.fasta > locus5.Cascades.txt
echo 3 5 Salex_melanopsis > Smelanopsis.mig
echo 656 708 847 1159 779 >> Smelanopsis.mig
echo 154 124 120 74 126 NFCup >> Smelanopsis.mig
cat locus1.NFCup.txt locus2.NFCup.txt locus3.NFCup.txt locus4.NFCup.txt locus5.NFCup.txt >> Smelanopsis.mig
echo 32 30 30 18 38 Salmon River >> Smelanopsis.mig
cat locus1.Salmon.txt locus2.Salmon.txt locus3.Salmon.txt locus4.Salmon.txt locus5.Salmon.txt >> Smelanopsis.mig
echo 56 52 24 29 48 Cascades >> Smelanopsis.mig
cat locus1.Cascades.txt locus2.Cascades.txt locus3.Cascades.txt locus4.Cascades.txt locus5.Cascades.txt >> Smelanopsis.mig

La série de grep sont juste de sortir d'une séquence d'ADN de données pour chaque site pour chaque locus dans de nouveaux fichiers texte. L'Samples...txt les fichiers ont l'échantillon de numéros d'identification pour un site, le .fasta fichiers de la séquence de l'information organisé par l'identification de l'échantillon; la grepping fonctionne très bien en ligne de commande si je l'exécute individuellement.

Le deuxième groupe de code crée le nouveau fichier que j'ai besoin à la fin, qui se termine en .mig. L'écho des lignes sont données sur le nombre de paires de bases par locus, les populations dans l'analyse, les échantillons par site, etc.) que le programme a besoin d'informations. Le chat les lignes sont écrasez ensemble du locus par les données d'un site créé par tous les grepping ci-dessous le site des informations spécifiques dictées dans l'écho de la ligne. Vous avez sans doute obtenir l'image.

Pour créer le script shell que j'ai commencé dans Excel afin que je puisse facilement copier-coller/remplissage automatique des cellules, de la sauvegarde en texte délimité par des tabulations, puis l'ouverture de ce fichier texte dans TextWrangler pour supprimer les onglets avant de l'enregistrer en tant que .sh fichier (les sauts de Ligne: Unix (LF) et de l'Encodage: Unicode (UTF-8)) dans le même répertoire que tous les fichiers utilisés dans le script. J'ai essayé d'utiliser chmod +x FILENAME.sh et chmod u+x FILENAME.sh pour essayer de s'assurer qu'il est exécutable, mais en vain. Même si je coupe le script vers le bas, juste un simple grep ligne (avec le #! /bin/bash première ligne) je ne peux pas le faire fonctionner. Le processus ne prend qu'un instant lorsque je tape directement dans la ligne de commande comme aucun de ces fichiers sont de plus de 160 KO et certains sont nettement plus petits. C'est ce que je fais et ce que j'obtiens quand j'essaie d'exécuter le fichier (HW est le bon répertoire)

localhost:HW Mirel$ MigrateNshell.sh
-bash: MigrateNshell.sh: command not found

J'ai été à cette impasse depuis deux jours maintenant, de sorte que toute entrée serait grandement apprécié! Merci!!

source d'informationauteur ChickadeeChick