When you use cp without any arguments, it defaults to copying files as below
cp sourcefile destinationLocation
#will copy sourcefile to the specified destinationLocation
But if you want to copy a directory, you need to specify the recursive argument like this
cp -R dir1 dir2 #copies dir1 to dir2
cp -R dir dir2 dir3 #copies dir1 & dir2 to dir3
Ideally you can specify as many files as you want to a single destination all separated by spaces. This here below however copies a dir along with its permissions
sudo cp -rp /home/me /media/backup/me
-p same as --preserve=mode,ownership,timestamps
Alternatively you can use rsync
sudo rsync -a /home/me/ /media/backup/me/
-a, --archive
Note that -a does not preserve hardlinks, because finding multiply-linked
files is expensive. You must separately specify -H.
And Please don't forget the trailing slashes when copying using rsync. See the man page for each command on options of using them available on your terminal by typing man cp or man rsync
-R
option:cp -R /source/path /target/path