Le traitement par lots de commandes peut être suffisant pour les opérations les plus élémentaires, mais son inclusion dans une logique de programmation peut s'avérer fastidieuse. Par exemple, pour obtenir des informations d'utilisation de l'espace pour chaque partage, il vous faut un grand nombre d'invocations différentes de la CLI, incluses dans un langage de niveau supérieur sur le client qui a analysé la sortie de commandes données. Le résultat est une infrastructure d'automatisation lente et fragile. Pour permettre une automatisation plus rapide et plus robuste, l'appareil est doté d'un environnement de script basé sur ECMAScript 3. Ce document n'a pas pour objet de fournir un tutoriel sur ECMAScript. Sachez toutefois qu'il s'agit d'un langage à saisie dynamique possédant une syntaxe de type C prenant en charge :
Le code à exécution conditionnelle (if/else)
Le code à exécution itérative (while, for, etc.)
La manipulation de données structurelles et de tableaux via des types d'objets et de tableaux de première classe
Les expressions régulières et la manipulation de chaînes de type Perl (split(), join(), etc.)
Exceptions
Des fonctions de langage fonctionnel sophistiquées telles que les fermetures