Leer fichero C, linux: open, read , close

Поделиться
HTML-код
  • Опубликовано: 16 янв 2025
  • Programar en c linux. Abrir un fichero , leer un fichero.
    Funciones open, read , close (llamadas al sistema)
    Escribir en el fichero desde consola con "echo"
    Qué es el descriptor de archivo

Комментарии • 45

  • @WhileTrueThenDream
    @WhileTrueThenDream  6 лет назад +13

    algunas aclaraciones que he olvidado ...
    File descriptor: descriptor de archivo
    open, read y close : realizan llamadas al sistema
    echo es un comando del terminal con el que escribo en el archivo

  • @nicodyj5491
    @nicodyj5491 4 года назад +3

    Enamorado con esa voz y esa explicacion. Lo que me ayudan tus videos no tenes idea. Saludos desde 🇦🇷

  • @zherar7ordoya
    @zherar7ordoya Год назад

    Dios santo...me he enamorado de tu voz.

  • @chilangochilango1356
    @chilangochilango1356 3 года назад +2

    Muchas gracias por tus videos y la paciencia de explicar. Soy estudiante de la carrera de Contador Públicos, pero también me encantan estos temas.

  • @gersondavidgalindogalindo3211
    @gersondavidgalindogalindo3211 4 года назад +1

    Muchisimas gracias, este video es lo que estaba buscando para un trabajo de la Universidad. Gracias a este ejemplo tengo las pautas basicas. Saludos.

  • @LEONORIOFR1
    @LEONORIOFR1 5 лет назад +3

    por fin alguien que explica programación para novatos

  • @GuachiVlogs
    @GuachiVlogs 3 года назад +3

    Vengo de Sistemas Operativos 2021 - 2022 de la UV =D

  • @14francotirador
    @14francotirador 5 лет назад +2

    Muy buen video ! Te explicas bastante bien,

  • @hector939sg6
    @hector939sg6 3 года назад +2

    Gracias por el aprovado

    • @WhileTrueThenDream
      @WhileTrueThenDream  3 года назад

      Me alegra saber que aprobaste y que algún video te ayudo a entender algo!!

  • @georoso6633
    @georoso6633 2 года назад

    gracias por tu video me ayudo mucho bendiciones

  • @orifasful
    @orifasful 6 лет назад +3

    Impresionante lección!

  • @waqasali9983
    @waqasali9983 Год назад

    De lo bueno que explicas me encantaría que hagas tutoriales de Java porfavor o python por lo menos, esto ayudaría a nosotros y efectivamente crecer tu canal

    • @WhileTrueThenDream
      @WhileTrueThenDream  Год назад +1

      Holaaa.
      Gracias por el feedback. Python no lo descartaría peero me parece que hay ya muchos canales y lo veo explotado y de Java dudo que haga un video. En 12 años no lo he usado nunca y no creo que lo necesite en el futuro. Una duda, para que necesitas Java?

    • @waqasali9983
      @waqasali9983 Год назад

      Buenos dias Amaia
      Java, esque estoy aprendiendo programación y pues en mi curso se dando java (ya que es un lenguaje importante, WORA)
      Si cierto hay varios canales de python e incluso de java pero cada uno tiene su manera de explicar las cosas y en tu caso se entiende mejor (aunque no soy Español nativo) pero que enseñas desde 0 para los principiantes pues merece la pena verlas, y si digo python porque es mas sencillo de coger y sería una suma en CV digo
      Saludo

  • @lukas7392
    @lukas7392 3 года назад +4

    #include
    int main ()
    {
    printf("Muchas gracias por el videotuto");
    }
    return

  • @zolek09
    @zolek09 4 года назад +1

    Tremendo vídeo! Qué clarito todo!!! Muchas gracias!
    Me suscribo, btw.

  • @oscar-bp9xk
    @oscar-bp9xk 3 года назад +1

    Gracias por el video, muy bien explicado.

  • @migue_sofoke13
    @migue_sofoke13 6 лет назад +3

    Buen vídeo

  • @TheEmbeddedLinuxDude
    @TheEmbeddedLinuxDude 5 лет назад +2

    bien hecho!

  • @Stupy4444
    @Stupy4444 4 года назад +2

    uff me encanta tu voz, suscrito!

  • @MrHitsGame
    @MrHitsGame 4 года назад +1

    Hola pregunta existe alguna forma de leer y escribir al mismo tiempo (comunicacion bidireccional)? o hay que crear otro fd?

    • @WhileTrueThenDream
      @WhileTrueThenDream  4 года назад

      Hola
      Si lo que quieres es abrir un fichero para poder leerlo y también escribir, debes utilizar el flag O_RDWR al abrirlo man7.org/linux/man-pages/man2/open.2.html.
      Con lo de "al mismo tiempo (comunicación bidireccional)" no entiendo bien qué quieres hacer. Tal vez quieras comunicar dos procesos ? En ese caso puedes utilizar pipes, messaages queues, shared memory, ficheros...
      Saludos

  • @nestor2kirchner290
    @nestor2kirchner290 5 лет назад +1

    Hola una pregunta hay algún descriptor de archivo csc ?

  • @Estrategias_Eficientes
    @Estrategias_Eficientes 5 лет назад +1

    pero que es exactamente el a.out , ahi compilas el archico que has escrito y ejecuta mifichero?????????

    • @WhileTrueThenDream
      @WhileTrueThenDream  5 лет назад

      a.out es el ejecutable. El nombre "a.out" es el nombre que se genera por defecto al compilar con gcc si no se especifica un nombre concreto. Si recuerdo bien lo ecplico en el video
      ruclips.net/video/L5KW0MugCug/видео.html
      "mifichero" se le.

  • @dioganes
    @dioganes 4 года назад +2

    Enamorao me tienes con tu voz y tu forma de explicarte!
    Por cierto, por qué no poner el tamaño del buffer a 5 como el máximo de caracteres en vez de a 10?

    • @WhileTrueThenDream
      @WhileTrueThenDream  4 года назад +1

      Hola!
      Gracias.
      Si, podrías hacer el buffer mas pequeño.
      Además, si vas a seguir operando con ese buffer de chars, hay que tener en cuenta que los strings en C deben estar terminados en '/0', algunas funciones sino generaran error, como strlen()... o sea hay que prever un byte de más.

  • @phyroxdimebag3862
    @phyroxdimebag3862 3 года назад +3

    tenia un problema con open y es que a pesar de especificar en el segundo parámetro "O_CREAT | O_TRUNC | O_RDWR", no podia leer o escribir en el archivo cuando lo abria manualmente, después de googlear entendí que el tercer parametro de open se utiliza precisamente para asignar los permisos que yo necesitaba, en mi caso como tercer parametro "S_IRWXU". Dejo mi comentario por si le sirve a alguien en el futuro.

  • @martinmontiel1373
    @martinmontiel1373 8 месяцев назад

    Hola, sigo lo mismos pasos pero cuando agrego el comando ./a.out me sale (El numero de caracteres es -1), como hago para que leea el archivo nuevo?? porque se me hace que esta en otro o nose cual sera el error.

  • @alfredogodoy6854
    @alfredogodoy6854 5 месяцев назад

    size_t es un alias para unssigned int segun recuerdo. Podria ser algo parecido a ssize_t

  • @Stark-cx5ub
    @Stark-cx5ub 4 года назад +1

    El comando ll en MS-DOS?

  • @saragarciaserrano3908
    @saragarciaserrano3908 Год назад

    ssize_t es un tipo de dato que contempla bytes, pero teniendo en cuenta el valor -1. Cuando read devuelve 0, significa que ha llegado al final del archivo, y ese else, no es correcto del todo, porque en caso de que read devuelva -1, significa que se ha producido un error de lectura, lo cual es importante.

    • @WhileTrueThenDream
      @WhileTrueThenDream  Год назад

      Hola.
      No recuerdo bien como era el ejemplo, es antiguo, pero sí, tienes razón, el - 1 siempre debe manejarse.
      En un programa real siempre debe comprobar se que el valor retornado no implica error y si fuera así tomar una acción necesaria, talvez exit con error code, y loguear el error correspondiente por ejemplo.
      Saludos

    • @saragarciaserrano3908
      @saragarciaserrano3908 Год назад +1

      @@WhileTrueThenDreamsupongo que manejar el error como corresponda, eso ya no lo sé. Pero el ejemplo está bien, solo esas dos cosas que me han llamado la atención al ver el vídeo. Gracias!

  • @rafaelenriqueurquidirueda3127
    @rafaelenriqueurquidirueda3127 4 года назад +1

    Si mi fichero fuera mucho más grande como ejemplo de 3000 carácteres , en la función read para el buffer como tendría que hacerlo ? Muy buen video y bien explicado por cierto 👏👏👏

    • @WhileTrueThenDream
      @WhileTrueThenDream  4 года назад

      Hola.
      Si necesitas buffer muy grande es conveniente usar "dynamic memory allocation" asignación de memoria dinámiica con malloc. Hacer tiempo hice algùn vídeo sobre el tema.
      Saludos

  • @luklmmira9365
    @luklmmira9365 3 года назад +1

    me zuenas

  • @luklmmira9365
    @luklmmira9365 3 года назад

    No me boerrres los comentarios plis te qum