#define COPYMODE 0644
creat(argV[2],COPYMODE);
J'ai ces deux lignes de code dans un fichier copy.c. Je ne sais pas ce que ça veut dire. Veuillez donner un exemple à ce sujet
Il existe des drapeaux 3x3 bits pour un mode:
Ainsi, chaque triple code bien comme un chiffre octal.
rwx oct meaning
--- --- -------
001 01 = execute
010 02 = write
011 03 = write & execute
100 04 = read
101 05 = read & execute
110 06 = read & write
111 07 = read & write & execute
Alors 0644 c'est:
* (owning) User: read & write
* Group: read
* Other: read
Notez qu'en C, une initiale 0
indique la notation octale, tout comme 0x
indique la notation hexadécimale. Donc, chaque fois que vous écrivez zéro simple en C, c'est en fait un octal zéro (fait amusant).
Cela pourrait aussi s'écrire:
-rw-r--r--
Alors que les autorisations complètes, 0777 peuvent également s'écrire:
-rwxrwxrwx
Ainsi, le nombre octal passé à creat
correspond directement (via l'encodage octal du motif binaire) aux autorisations de fichier affichées par ls -l
.
Cela signifie que: