El módulo Node fs

El módulo fs de Node.js proporciona funciones útiles para interactuar con el sistema de archivos

losfsEl módulo proporciona una gran cantidad de funciones muy útiles para acceder e interactuar con el sistema de archivos.

No es necesario instalarlo. Al ser parte del núcleo de Node, se puede usar solicitándolo:

const fs = require('fs')

Una vez que lo haga, tendrá acceso a todos sus métodos, que incluyen:

  • fs.access(): compruebe si el archivo existe y el nodo puede acceder a él con sus permisos
  • fs.appendFile(): agrega datos a un archivo. Si el archivo no existe, se crea
  • fs.chmod(): cambia los permisos de un archivo especificado por el nombre de archivo pasado. Relacionado:fs.lchmod(),fs.fchmod()
  • fs.chown(): cambia el propietario y el grupo de un archivo especificado por el nombre de archivo pasado. Relacionado:fs.fchown(),fs.lchown()
  • fs.close(): cierra un descriptor de archivo
  • fs.copyFile(): copia un archivo
  • fs.createReadStream(): crea una secuencia de archivos legible
  • fs.createWriteStream(): crea una secuencia de archivos grabables
  • fs.link(): crea un nuevo enlace fijo a un archivo
  • fs.mkdir(): crear una nueva carpeta
  • fs.mkdtemp(): crea un directorio temporal
  • fs.open(): establece el modo de archivo
  • fs.readdir(): lee el contenido de un directorio
  • fs.readFile(): lee el contenido de un archivo. Relacionado:fs.read()
  • fs.readlink(): lee el valor de un enlace simbólico
  • fs.realpath(): resuelve punteros de ruta de archivo relativa (.,..) al camino completo
  • fs.rename(): cambiar el nombre de un archivo o carpeta
  • fs.rmdir(): eliminar una carpeta
  • fs.stat(): devuelve el estado del archivo identificado por el nombre de archivo pasado. Relacionado:fs.fstat(),fs.lstat()
  • fs.symlink(): crea un nuevo enlace simbólico a un archivo
  • fs.truncate(): truncar a la longitud especificada el archivo identificado por el nombre de archivo pasado. Relacionado:fs.ftruncate()
  • fs.unlink(): eliminar un archivo o un enlace simbólico
  • fs.unwatchFile(): dejar de observar los cambios en un archivo
  • fs.utimes(): cambia la marca de tiempo del archivo identificado por el nombre de archivo pasado. Relacionado:fs.futimes()
  • fs.watchFile(): comience a buscar cambios en un archivo. Relacionado:fs.watch()
  • fs.writeFile(): escribe datos en un archivo. Relacionado:fs.write()

Una cosa peculiar sobre elfsmódulo es que todos los métodos son asincrónicos por defecto, pero también pueden funcionar sincrónicamente agregandoSync.

Por ejemplo:

  • fs.rename()
  • fs.renameSync()
  • fs.write()
  • fs.writeSync()

Esto marca una gran diferencia en el flujo de su aplicación.

El nodo 10 incluyeapoyo experimentalparapromesaAPI basada

Por ejemplo, examinemos elfs.rename()método. La API asincrónica se usa con una devolución de llamada:

const fs = require('fs')

fs.rename(‘before.json’, ‘after.json’, (err) => { if (err) { return console.error(err) }

//done })

Se puede usar una API síncrona así, con un bloque try / catch para manejar errores:

const fs = require('fs')

try { fs.renameSync(‘before.json’, ‘after.json’) //done } catch (err) { console.error(err) }

La diferencia clave aquí es que la ejecución de su script se bloqueará en el segundo ejemplo, hasta que la operación del archivo sea exitosa.

Descarga mi gratisManual de Node.js


Más tutoriales de nodos: