mv: do not override destination file that is newer than source file (update move)

mv does not support the update option, unlike rsync and cp. If your version of coreutils does support it, using cp (followed by rm) is the easiest way to perform an update move operation:

remove read access for ‘other’

Per default, every user may read the content of other user’s home directories. To change that to a more private setup, remove all rights for other from all user’s home directories: This needs only to be done to the parent directory (/home/[user]), no chmod -R is necessary.

fix ssh file permissions

user@client~$ chown $USER:$USER -R $HOME/.ssh
user@client~$ chmod 700 $HOME/.ssh
user@client~$ find $HOME/.ssh/ -type f -exec chmod 600 {} +
user@client~$ find $HOME/.ssh/ -type f \( -name '*.pub' \) -exec chmod 644 {} +
Assuming that your public key files are named anything ending with “.pub”. Use the find command to recursively (see as well here) set file permissions. This allows you to organize multiple key files into subdirectories within the .ssh folder.

copy folders recursively via ssh (no password but key file)

From local to remote: From remote to local:

unix mv command without overriding existing files

Per default, mv will override existing files with the same name. To rename existing files with the same name instead, use the backup parameter.
mv --backup=numbered
The resulting file name pattern is [filename].[extension].~[number]~, e.g. image.jpg.~1~. Note that these files can be recognized as recycle or backup files by mistake. In this case they might be hidden by your file manager.