18/08/2003, 13:48
|
| | Fecha de Ingreso: febrero-2003
Mensajes: 11
Antigüedad: 21 años, 10 meses Puntos: 0 | |
Tail no es una llamada al sistema Bueno, yo se hacer llamadas al sistema de Linux, pero tail es un comando de Linux que muestra el final de un archivo.
$ tail -n 3 archivo
Muestra las tres ultimas lineas de un archivo.
He mirado en el archivo "unistd.h" donde estan las 190 llamadas al sistema de Linux y tail no aparece.
Pero bueno, yo te pongo un ejemplo de llamada al systema linux en C.
Es igual que cualquier otra funcion:
/* Llamada a stat */
#include <sys/stat.h>
#include <unistd.h>
#include <stdio.h>
int main(void){
struct stat s;
if( stat("/archivo", &s) ){
/* hacer algo con s */
}else{
printf("No funciono stat\n");
}
}
Las llamadas al sistema siempre devuelven 1 cuando tienen exito y un valor negativo si no.
Puedes ver el numero de error , en el valor de la variable errno.
#include <sys/stat.h>
#include <unistd.h>
#include <stdio.h>
#include <errno.h>
extern int errno;
int main(void){
struct stat s;
if( stat("/archivo", &s) ){
/* hacer algo con s */
if( S_ISDIR(s) ) printf("/archivo es un directorio");
}else{
printf("No funciono stat\n");
if (errno == EPERM ) printf("No tienes permisos");
}
}
Por lo demas las llamadas al sistema de Linux son exactamente iguales a cualquier otra funcion en C:
Última edición por vfgt; 18/08/2003 a las 14:01 |