Comment puis-je copier un seul fichier et conserver la structure des répertoires?

12

Comment puis-je faire cela sur la ligne de commande?

par exemple copier /dir/another/filevers /tmp/j'ai donc/tmp/dir/another/file

Allan Thomas
la source

Réponses:

25
cp --parents /dir/another/file /tmp

fera exactement ce que vous voulez.

Colin 't Hart
la source
des idées pour os / x? --parentsn'habitez pas ici; (
javadba
tar ou rsync? Voir les deux autres réponses :-)
Colin 't Hart
1
Pour macOS, vous pouvez, via homebrew, installer brew install coreutilset utilisergcp --parents /dir/another/file /tmp
dotnetCarpenter
4

rsync peut être une bonne aide pour cela:

rsync -Ravz my/first/dir/file.txt another_dir

sera donné comme résultat

another_dir/my/first/dir/file.txt
Cédric Julien
la source
2

Vous pouvez utiliser tarpour conserver les chemins lors de la copie des fichiers:

tar cf - /dir/another/file | (cd /tmp && tar xf -)
Roland Levillain
la source