One of the lovable features in linux is its wealth of command line tools. These tools can be used in various combinations to suit diverse tasks and can be implemented at different levels of expertises.
cp A.txt B.txt # simple copy A.txt to B.txt, with various options
dd if=/dev/sda2 of=/dev/sdb2 bs=4096 conv=noerror # copies a file (from standard input to standard output, by default) with a changeable I/O block size, while optionally performing conversions on it. this is a very powerful toy, refer to man page or pedia
tar -cvf mytar.tar /home/mydir/ #saves many files together into a single tape or disk archive, and can
restore individual files from the archive.
gzip or bzip2 # compress a file for better storage, can be integrated with tar
scp # copy files bridged over internet via ssh
rsync -avlu -e “ssh -l remoteuser” remoteserver.domain:Dir2backup ./localdir # sync files locally or remotely.
ln # create hard or symbolic link to a file, can be used to duplicate file too.
ftp/sftp copy files over internet (with ssh)