Comment obtenir cpio (gnu, rhel 4) pour extraire dans un répertoire spécifié?

9

La raison est que je veux faire un script bien rangé au lieu de

cd /some/dir
cpio -whatever<somefile
cd -
Erik I
la source

Réponses:

10

Il n'y a rien dans GNU cpio pour permettre cela. Cela pourrait être un peu plus propre:

(cd /some/dir && cpio -whatever < /some/file)

L'utilisation des parenthèses de sous-shell préservera le répertoire de travail actuel des scripts et l'utilisation de && garantira que l'extraction de cpio n'est effectuée que si vous changez avec succès les répertoires en cible.

TCampbell
la source
3
Le somefiledoit résider /some/dirici. Je viens de l'essayer et il m'a dit qu'il ne pouvait pas trouver les fichiers. Vous devez donc soit utiliser des chemins relatifs pour revenir à l'emplacement des fichiers, soit des chemins absolus.
CMCDragonkai
0

En ajoutant un peu plus à ce que TCampbell a fait:

(cp / certains / fichier / certains / dir && cd / certains / dir && cpio -qui <fichier && rm -f fichier)

Payero
la source