Stai cercando il cp comando. Devi cambiare directory in modo da essere fuori dalla directory che stai tentando di copiare.
Se la directory che stai copiando si chiama dir1 e vuoi copiarlo sul tuo /home/Pictures cartella:
cp -r dir1/ ~/Pictures/
Linux fa distinzione tra maiuscole e minuscole e richiede anche / dopo ogni directory per sapere che non è un file. ~ è un carattere speciale nel terminale che valuta automaticamente la home directory dell'utente corrente. Se hai bisogno di sapere in quale directory ti trovi, usa il comando pwd .
Quando non sai come usare un comando Linux, c'è una pagina di manuale a cui puoi fare riferimento digitando:
man [insert command here]
al prompt del terminale.
Inoltre, per completare automaticamente percorsi di file lunghi durante la digitazione nel terminale, puoi premere Tab dopo che hai iniziato a digitare il percorso e ti verranno presentate delle scelte o verrà inserita la parte rimanente del percorso.
C'è un'importante distinzione tra Linux e Unix nella risposta perché per Linux (GNU e BusyBox) -R , -r e --recursive sono tutti equivalenti, come menzionato in questa risposta. Per la portabilità, ovvero la conformità POSIX, dovresti utilizzare -R a causa di alcune differenze dipendenti dall'implementazione con -r . È importante leggere le pagine man per conoscere eventuali idiosincrasie che possono sorgere (questo è un buon caso d'uso per mostrare perché gli standard POSIX sono utili).
L'opzione che stai cercando è -R .
cp -R path_to_source path_to_destination/
- Se
destinationnon esiste, verrà creato. -Rsignificacopy directories recursively. Puoi anche usare-rpoiché non fa distinzione tra maiuscole e minuscole.- Copiare tutto dentro la cartella di origine (collegamenti simbolici, file nascosti) senza copiare la cartella di origine stessa usa
-aflag insieme al/.finale nella fonte (come da@muni764's /@Anton Krugcommento di):
cp -a path_to_source/. path_to_destination/
Usa:
$ cp -R SRCFOLDER DESTFOLDER/