Move semantics
Source | Target | Action |
file | non-existing | fsl_file2file |
file | existing file | error |
dir | non-existing | fsl_dir2dir |
dir | existing-dir | fsl_dir2dir targ/dir |
- mv dir1 dir2 # dir2 NOT exists
=> dir2
- mv dir1 dir2 # dir2 exists
=> dir2/dir1
- mv f1 f2 # f2 not exists, otherwise error
=> f2
- mv f1 dir1 # dir1 exists
=> dir1/f1
- mv f1 dir1/f2 # dir1 may or may not exist, error if f2 exists
=> dir1/f2
- mv f1 dir1 ../f2 dir2/f3 dir3 # dir3 exists (error otherwise)
=> dir3/dir1 dir3/f2 dir3/dir2/f3