Files
SCR/SCR1.2/TP11/reponses.txt~
2024-09-10 15:13:11 +02:00

81 lines
1.2 KiB
Plaintext

Exercice 1:
read_file.c fait la même chose que cat.
#define BUTS7 256
#define LEN 128
int main(int argc,char*argv[]
{
int n
if(argc<2)
{
n=snprintf(str,LEN,"Usage: %s <FILE_NAME>\n",argv[0]);
write(2,str,n);
exit(1);
}
}
//alternative
if(argc<2)
{
write(2,"Usages: ",7);
write(2,argv[0],strlen(argv[0]));
write(2," <FILE_NAME>\n",13);
exit(1);
}
fd=open(argv[1],O_RDONLY);
if(fd ==-1)
{
perror("Openning file fails"); //perror affiche mon message puis le message standard associé a l'erreur qui vient de se produire
exit(2);
}
while(n=read(fd,buf,BUFS7))
{
if(n==1)
{
perror("Read in file fails");
exit(3);
}
while(m==write(1,buf,n));
if(m==-1)
{
perror("write to stdait fails");
exit(4);
}
close(fd);
exit(0);
}
Exercice 2:
Copy.c fait la même chose que cp
#define BUFS7 256
#define LEN 128
int main(int argc,char*argv[])
{
int fdr,fdw,m,n;char buf[BUFS7];char str[LEN];
if(argc<3)
{
n =snprintf(str,LEN,"Usage %s <SRC_FILE><DEST_FILE>\n",argv[0]);
write(2,str,n);
exit(1);
}
fdr=open (argv[1],O_RDONLY];
if(fdr==-1)
{
perror("Openning SRC_FILES fails");
exit(2);
}
fdw=open(argv[2],O_WRONLY|O_CREAT|O_TRUNC,0600);
if(fdw==-1)
{
perror("Openning DEST_FILE fails");
exit(3);
}