ZSH/Shell variable d'affectation ou d'utilisation

J'utilise ZSH pour mon terminal shell, et alors que je l'ai écrit plusieurs fonctions pour automatiser des tâches, je n'ai jamais vraiment essayé tout ce qui requiert de la fonctionnalité de je suis après à l'heure actuelle.

J'ai récemment écrit un blog à l'aide de Jekyll et je veux automatiser la production de messages de blog, et enfin la mise en ligne des nouveaux produits des fichiers sur mon serveur en utilisant quelque chose comme scp.

Je suis un peu confus au sujet de la variable liaisons/utilisation en ZSH; par exemple:

DATE= date +'20%y-%m-%d'
echo $DATE

correctement les résultats 2011-08-23 comme je l'avais espérer.

Mais quand j'essaie:

DATE= date +'20%y-%m-%d'
FILE= "~/path/to/_posts/$DATE-$1.markdown"
echo $FILE

Il sorties:

2011-08-23
blog.sh: line 4: ~/path/to/_posts/-.markdown: No such file or directory

Et lorsqu'il est exécuté avec ce que j'avais envie que le titre du blog (en ignorant le fait que la chaîne doit être manipulés afin de le rendre plus url amicale et que la voie de chemin/vers n'existe pas)

c'est à dire blog "le titre du blog", sorties:

2011-08-23
blog.sh: line 4: ~/path/to/_posts/-blog title.markdown: No such file or directory

Pourquoi est $DATE d'impression au-dessus de l'appel à la fonction print $FICHIER plutôt que la chaîne est inclus dans $FICHIER?

date +%Y-%m-%d est plus propre que date +20%y-%m-%d. date +%F est encore plus propre. (Cela suppose que votre date de commande prend en charge ces formats; GNU date, mais d'autres ne peuvent pas.)

OriginalL'auteur HaaR | 2011-08-23