drwxr-xr-x 32 root sys 1024 mai 3 2001 / drwxr-xr-x 4 root sys 4096 jan 12 04:05 /users drwxr-x--x 49 root sys 4096 jan 12 04:05 /users/home drwxr-x--x 47 yunes ens 4096 jan 12 04:05 /users/home/yunes -rw-r----- 1 yunes staff 512 mai 3 2001 /users/home/yunes/bidule drwxrwxr-x 2 root sys 512 jan 12 04:05 /users/home/yunes/subdirRépondre aux questions suivantes (on peut supposer qu'il existe de nombreux autres utilisateurs et groupes définis dans le système, il est possible de désigner l'ensemble d'entre eux par le caractère *) :
#include <ce_qu_il_faut.h> off_t liste[6] = { 12, -2, -5, 4, 5, -4 }; int main(int argc,char *argv[]) { int d[2], i; char c; d[0] = open("ascii",O_RDONLY); d[1] = dup(d[0]); lseek(d[0],1,SEEK_SET); read(d[0],&c,1); write(STDOUT_FILENO,&c,1); for (i=0; i<6; i++) { lseek(d[i%2],liste[i],SEEK_CUR); read(d[i%2],&c,1); write(STDOUT_FILENO,&c,1); } close(d[0]); close(d[1]); exit(EXIT_SUCCESS); }On supposera que le fichier de nom ascii existe et contient les 26 caractères minuscules de l'alphabet.
[1] yunes% cat rep/f1 bonjour, au revoir [2] yunes% cat rep/f2 hello, goodbye [3] yunes% ls rep ls: rep: Permission deniedOn supposera que pendant cette séquence aucune action extérieure ne pertube le système; répondre aux questions suivantes :
On suppose que les utilisateurs ont la possibilité de déposer des fichiers dans un répertoire commun de référence /var/nouvelles.
L'exécution de la commande nouvelles sans arguments permet d'afficher le nom puis le contenu de chaque fichier du répertoire commun à condition que lesdits fichiers n'aient pas été déjà lus précédemment (cette information est déduite par comparaison de la date de dernière modification du fichier concerné et la date de dernière modification d'un fichier de nom .dernieres_nouvelles situé dans le répertoire privé de chaque utilisateur).
L'exécution de la commande nouvelles -a permet d'afficher la liste des noms de fichier du répertoire commun.
L'exécution de la commande nouvelles référence permet d'afficher le contenu du fichier situé dans le répertoire commun.