Je stocke le script SQL pour une version particulière dans un sous-répertoire de 'scripts' nommé d'après la version de publication, par ex.Script Bash: obtention de la sous-liste du fichier
...
./scripts/1.8.3/script-1.8.3.sql
./scripts/1.8.4/script-1.8.4.sql
./scripts/1.8.4.1/script-1.8.4.1.sql
./scripts/1.8.4.2/script-1.8.4.2.sql
./scripts/1.8.4.3/script-1.8.4.3.sql
./scripts/1.9.0/script-1.9.0.sql
./scripts/1.9.1/script-1.9.1.sql
./scripts/1.9.2/script-1.9.2.sql
./scripts/1.9.3/script-1.9.3.sql
./scripts/1.9.4/script-1.9.4.sql
./scripts/1.9.5/script-1.9.5.sql
./scripts/1.9.6/script-1.9.6.sql
./scripts/1.9.6.1/script-1.9.6.1.sql
...
Dans un script bash, je dois obtenir tous les fichiers SQL qui s'appliquent au-delà d'un certain numéro de version. Par exemple, si ce numéro de version est 1.9.4 Je voudrais obtenir la liste
./scripts/1.9.4/script-1.9.4.sql
./scripts/1.9.5/script-1.9.5.sql
./scripts/1.9.6/script-1.9.6.sql
./scripts/1.9.6.1/script-1.9.6.1.sql
...
Je sais que je peux obtenir la liste complète des fichiers commandés par la libération par
all_files = `find . -name '*.sql' | sort`
Mais je ne suis pas sûr comment je peux filtrer cette liste pour obtenir tous les fichiers "sur ou après" une version particulière.
Soyez prudent couting sur le tri. Même avec -n. vous version 1.10.3 (que quelqu'un fait toujours) va être hors service. –