Dans cette séquence de ligne de commande, j'utilise un caractère générique * .sh pour restaurer certains fichiers. J'ai eu trois hits. Sachant qu'il doit y en avoir plus, j'ai tapé tout le nom. Par exemple: goFindRanges.sh. J'ai pu restaurer un fichier supplémentaire. Comment le caractère générique a-t-il dérangé?
Mon archive .tgz est sur un disque dur; Pas de support optique. J'utilise bash sur mon Ubuntu 10.10.
b@maui:~$ tar xvpfz backup2011Sep06T0000.tgz ./javawork/Trader1/*.sh ./javawork/Trader1/goReloadOp.sh ./javawork/Trader1/goReloadAudit.sh ./javawork/Trader1/goTrade.sh b@maui:~$ tar xvpfz backup2011Sep06T0000.tgz ./javawork/Trader1/goFindRanges.sh ./javawork/Trader1/goFindRanges.sh
Votre curseur élargit ce qui est déjà sur le disque, pas ce qu'il y a dans l'archive (tgz).
Quand vous faites:
tar xvpfz backup2011Sep06T0000.tgz ./javawork/Trader1/*.sh
Le *.sh
est développé par shell (en supposant que n'importe quel ./javawork/Trader1/*.sh existe). Ainsi, le goudron sera exécuté par shell comme suit:
tar xvpfz backup2011Sep06T0000.tgz ./javawork/Trader1/goReloadOp.sh ./javawork/Trader1/goReloadAudit.sh ./javawork/Trader1/goTrade.sh
Si vous souhaitez passer le curseur sur le goudron, pour dire "s'il vous plaît, extraire-moi seulement ces fichiers", vous devez le citer un seul et ajouter l'option --wildcards
:
tar xvpfz backup2011Sep06T0000.tgz --wildcards './javawork/Trader1/*.sh'