J'apprends tcl (attendez) et maintenant je suis arrivé à un problème intéressant. J'ai besoin d'une commande pour déplacer/renommer un tas de fichiers avec l'extension .status. J'ai essayé ces:Comment renommer/déplacer tous les fichiers avec une certaine extension?
spawn /bin/mv *.status some_dir
exec /bin/mv *.status some_dir
Bien sûr, cela ne fonctionne pas. J'ai googlé un peu et trouvé quelque chose à propos de glob, mais ça ne semble pas fonctionner comme je le veux. Si je fais:
exec /bin/mv [glob *.status] somedir
mv se plaint que '1.Etat 2.status 3.status ... etc.' n'est pas un fichier valide. C'est comme si toute la liste des fichiers était concaténée en une seule chaîne au lieu d'être traitée séparément. Essayer de trouver plus d'informations via google me conduire à beaucoup de liens brisés et périmés, donc j'espère à côté de résoudre ce problème, pourriez-vous me signaler une bonne ressource en ligne pour tcl/s'attendre à des bases et des pièges communs.
Mise à jour: Seules les solutions utilisant les outils standards tcl et standard dans/bin seront acceptées.
ressemble beaucoup. Pourriez-vous expliquer à un débutant tcl pourquoi [list exec/bin/mv] est nécessaire ici? –
En fait, je pense que cette partie est redondante. Édité. –
Il n'est pas nécessaire d'exécuter un programme externe pour que cela fonctionne. Tcl a des commandes de gestion de fichiers robustes. Bien sûr, si l'exec fonctionne et vous permet de passer à d'autres tâches, c'est génial. Pour les personnes qui ont trébuché sur cette question plus tard, il est important de souligner que vous pouvez le faire de manière multi-plateforme sans avoir recours à exec. –