-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy pathcp_mv.txt
101 lines (90 loc) · 5.43 KB
/
cp_mv.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
┏━━━━━━━━━━━┓
┃ CP_MV ┃
┗━━━━━━━━━━━┛
cp FILE1... FILE2 #Copie FILE1... vers FILE2 selon ce schema :
# - file1 > ni file2 ni dir2 n'existent : Creation de
# file2
# - dir1 > ni file2 ni dir2 n'existent : Creation de
# dir2
# - file1 > file2 existant : file3 ecrase file2
# - dir1 > file2 existant : Erreur
# - file1 > dir2 existant : Creation de file3 a
# l'interieur de dir2.
# Ecrase les fichiers du
# meme nom si existe
# - dir1 > dir2 existant : Creation de dir3 a
# l'interieur de dir2.
# Erreur si dir du meme nom
# a l'interieur de dir2 si
# récursion
#Pour ecraser le contenu d'un répertoire, utiliser -rT
#Un répertoire ou un special file ne peut pas être
#copié sans l'option -r
-r
-R #Copy directories recursively. Necessaire pour copier
--recursive #un repertoire ou un special file
--copy-contents #Si FILE2 est un fichier special, copie non pas le
#special file en lui-même, mais son contenu (voir doc)
-T #Permet a un repertoire d'en compléter un autre. Le
--no-target-directory #contenu de dir2 en doublon avec dir1 sera écrasé, le
#reste restera tel quel. Il n'est possible que de
#designer un seul repertoire a copier
#Ne marche que si FILE1 est un répertoire, et avec -r
-n
--no-clobber #Do not overwrite
-i
--interactive #Prompt before overwrite
-u #N'ecrase que si le fichier a copier est plus recent
--update #que le fichier a ecraser
--backup="none"
--backup="off" #Ne cree jamais de backup (défaut)
-b
--backup="never" #Cree un backup du fichier ecrase sur le modele
--backup="simple" #FILE~ et ecrase tout backup deja cree ainsi
--backup="numbered" #Cree un backup du fichier ecrase sur le modele
--backup="t" #FILE.~index~ et incremente l'index a chaque backup,
#sauf sur le premier backup, construit sur le modele
#FILE~
--backup="existing" #Comme "simple" sauf que si un backup sur le modele
--backup="nil" #FILE.~index~ existe deja, utilise ce modele
-S "SUFFIX"
--suffix="SUFFIX" #override the usual backup suffix
-s
--symbolic-link #Make symbolic links instead of copying
-l
--link #Make hard links instead of copying
-L #Déférence FILE1, ainsi que les symlinks rencontrés
--dereference #récursivement dans FILE1 si -r
-H #Déférence FILE1, mais pas les symlinks rencontrés
#récursivement dans FILE1 si -r (défaut)
-P
--no-dereference #Ne déférence pas FILE1
-x #Si FILE1 est un répertoire et que -r, ne copie pas les
--one-file-system #fichiers à l'intérieur de la récursion de FILE1
#appartenant à une partition différente
-p #preserve les droits d'executions, ownership, atime et
--preserve #ctime du fichier ecrase
-a
--archive #same as -P -R --preserve=all
-t DIR #Manière de spécifier FILE2 s'il s'agit d'un répertoire.
#Utile pour inverser FILE1 et FILE2 :
# - cp -t FILE2 FILE1...
--sparse=auto #FILE2 est un sparse file seulement si FILE1 en est un
#(défaut). La détection est faite par une méthode
#heuristique
--sparse=always #Même chose, mais la détection note comme "sparse files"
#un plus grand nombre de fichiers (détection plus
#laxiste)
--sparse=never #FILE2 n'est jamais un sparse file, même si FILE1 en est
#un. Les nulls sont expanded.
mv [FILE]... FILE2 #Agit exactement comme cp, sauf que le fichier copié
#est supprimé apres copie. Prend les memes options
#egalement, sauf que :
# - Toujours récursif (-r n'existe donc pas)
# - -p et -a n'existent pas
# - les options sur les liens symboliques (-s, -L et
# -P) n'existent pas
# - impossible d'ecraser un repertoire meme avec -T
# - les options --copy-contents, -d, -H, -l, --
# preserve=ATTR, --no-preserve, --parents, --remove-
# destination, --sparse, -x ne sont pas disponible