copie à l'écriture, données moins redondantes

2

J'ai un dossier contenant beaucoup d'images et un programme pour mettre à jour certaines des images.

Je veux créer un nouveau dossier avec une copie de l'ancienne photo et exécuter le programme mais je veux économiser de l'espace sur mon disque dur afin de ne pas conserver une copie de toutes les images non modifiées.

ArvoX
la source
Ce serait bien de savoir de quel programme il s'agit, ou du moins ce qu'il fait.
digitxp le

Réponses:

2

Le programme écrit-il simplement sur l'image modifiée ou crée-t-il un nouveau fichier et supprime-t-il l'ancien? Dans ce dernier cas, vous pouvez créer votre répertoire de travail cp -dRl origdir workdir, ce qui créera des liens physiques au lieu de nouvelles copies. (Ou cp -dRssi vous préférez utiliser des liens symboliques au lieu de liens durs.)

geekosaur
la source
Les liens durs sont la voie à suivre. Je les utilise actuellement avec mes sauvegardes à distance. J'ai environ 400 Go de sauvegardes quotidiennes stockées dans moins de 10 Go d'espace disque dur réel.
Hydaral
0

Je me servirais et ferais /tmpun script shell pour copier chaque image puis la traiter. Si la photo est traitée avec succès, déplacez-la ailleurs, sinon supprimez-la. Faites cette photo une à la fois.

par exemple

#!/bin/bash

for f in *
do
     cp "$f" /tmp
     /path/to/yourprogram "/tmp/$f"
     # check if picture was processed correctly, possibly via exit code ($?)
     if [ $? -eq 0 ]
     then
           mv "/tmp/$f" /some/other/location
     else
           rm "/tmp/$f"
     fi
done

De nombreuses façons de peler un chat, modifiez-le en fonction de vos besoins.

John T
la source
En regardant autour de moi, je ne trouve aucun code de sortie documenté pour ImageMagick. Cela crée de sombres attentes pour ce programme qui doit encore être nommé.
digitxp