Je courais le code (de sauvegarde) suivante dans un script Ruby:Comment imprimer la sortie de exec() en temps réel?
for directory in directories
print `s3sync.rb --exclude="#{EXCLUDE_REGEXP}" --delete --progress -r #{directory} my.amazon.backup.bucket:#{directory}`
end
Je voudrais que la sortie du sous-processus exécuté à être répercuté au terminal en temps réel (par opposition à avoir à attendre jusqu'à ce que le retours de sous-processus). Comment je fais ça?
Êtes-vous sûr que cela fait ce que vous voulez? La documentation indique que exec * remplace * le processus en cours, ainsi votre programme terminera l'exécution après l'exécution de s3sync.rb pour le premier répertoire. Je pense que vous voudrez utiliser le système Kernel # à la place. Plus d'infos sur http://blog.jayfields.com/2006/06/ruby-kernel-system-exec-and-x.html – DataWraith
Oh, bon appel. J'ai seulement 1 répertoire qui est sauvegardé jusqu'ici, donc j'ai raté ça! –