Commande cp Linux pour copier un dossier dans le répertoire courant
je me demande s'il y a une commande identique pour copier un dossier dans le répertoire courant comme elle l'a fait en utilisant L'ancien MS-DOS. Disons que l'emplacement de mon répertoire courant est:
/var/www/
j'ai des dossiers et des fichiers:
/home/hope/subfolder/docs/
/home/hope/subfolder/images/
/home/hope/subfolder/.config
/home/hope/subfolder/readme.txt
je sais que la commande suivante:
cp -rT /home/hope/subfolder .
va copier tous les fichiers (même les fichiers cachés) et dossiers dans le dossier "sous-dossier" dans le répertoire courant, de sorte que le résultat sera:
/var/www/docs/
/var/www/images/
/var/www/.config
/var/www/readme.txt
Regarde comme la commande pour que de copier le dossier source à l'emplacement actuel est:
cp -rT /home/hope/subfolder ./subfolder
bien que ce soit très bien, je trouve que parfois je vais faire des erreurs pour des noms de dossiers compliqués pour la destination, donc il y a une façon d'utiliser une commande comme:
cp -rT /home/hope/subfolder .
ou encore comme ceci
cp -rT /home/hope/subfolder /var/www/.
pour avoir le résultat suivant:
/var/www/subfolder/docs/
/var/www/subfolder/images/
/var/www/subfolder/.config
/var/www/subfolder/readme.txt
je vous Remercie.
2 réponses
Simplement omettre le paramètre-T, c'est ce qui empêche la commande de fonctionner correctement:
cp -r /home/hope/subfolder .
le paramètre-T traite l'argument cible comme un fichier, donc aucune copie ne sera effectuée si c'est en fait un répertoire.
un rappel amical: pratiquement toutes les commandes Unix ont un -- help argument de ligne de commande qui vaut la peine d'essayer en cas de problème :)
cp home/tmp/a* ./
cp ~/home/tmp/a* ./
mais cela ne fonctionne pas.