Comment obtenir le premier caractère de la variable

Je vais essayer d'obtenir le premier caractère d'une variable, mais je suis de se faire une Mauvaise erreur de substitution. Quelqu'un peut-il m'aider à résoudre ce problème?

code est:

while IFS=$'\n' read line
do
  if [ ! ${line:0:1} == "#"] # Error on this line
  then
    eval echo "$line"
    eval createSymlink $line
  fi
done < /some/file.txt

Je fais quelque chose de mal ou est-il une meilleure manière de faire ceci?

-- EDIT --

Comme demandé, voici quelques exemples d'entrée, qui est stocké dans /some/file.txt

$MOZ_HOME/mobile/android/chrome/content/browser.js
$MOZ_HOME/mobile/android/locales/en-US/chrome/browser.properties
$MOZ_HOME/mobile/android/components/ContentPermissionPrompt.js
peut-être vous avez besoin d'un espace entre le guillemet de fermeture et la fermeture de parenthèses, c'est à dire "#" ]
aussi, vous pourriez aussi bien aller avec A != B au lieu de ! A == B
aucun de ceux qui ont travaillé - désolé! Toujours faire une Mauvaise erreur de substitution à la ligne
pouvez-vous poster quelques données d'entrée à partir de file.txt on peut donc les tester?
Peut-être il y a une ligne vide dans le fichier, ou une ligne de départ avec des espaces blancs? essayez avec if [ ! "${line:0:1}" == "#" ]

OriginalL'auteur Martyn | 2013-07-18