El módulo OS en Python proporciona funciones para interactuar con el sistema operativo. OS viene bajo los módulos de utilidad estándar de Python. Este módulo proporciona una forma portátil de usar la funcionalidad dependiente del sistema operativo.
os.sendfile()
El método en Python se usa para copiar un número específico de bytes del descriptor de archivo de origen especificado al descriptor de archivo de destino especificado a partir del desplazamiento especificado.
Este método devuelve el número total de bytes enviados y si se alcanza el EOF (fin de archivo), devuelve 0.
Sintaxis: os.sendfile(destino, origen, desplazamiento, recuento)
Parámetros:
dest: Un descriptor de archivo que representa el archivo de destino.
origen: un descriptor de archivo que representa el archivo de origen
desplazamiento: un valor entero que representa la posición inicial. Los bytes a enviar se contarán desde esta posición.
recuento: un valor entero que indica el número total de bytes que se enviarán desde el descriptor del archivo de origen.Tipo de devolución: este método devuelve un valor entero que representa el total de bytes enviados desde el descriptor del archivo de origen al descriptor del archivo de destino. Se devuelve 0 si se alcanza EOF.
Considere el siguiente texto como el contenido del archivo llamado ‘Python_intro.txt’ .
Python es un lenguaje de programación de alto nivel y propósito general ampliamente utilizado. Inicialmente fue diseñado por Guido van Rossum en 1991 y desarrollado por Python Software Foundation. Fue desarrollado principalmente para enfatizar la legibilidad del código y su sintaxis permite a los programadores expresar conceptos en menos líneas de código. Python es un lenguaje de programación que le permite trabajar rápidamente e integrar sistemas de manera más eficiente.
Código:
Uso de
os.sendfile()
método
# Python program to explain os.sendfile() method # importing os module import os # Source file path source = './Python_intro.txt' # destination file path dest = './newfile.txt' # Open both files and get # the file descriptor # using os.open() method src_fd = os.open(source, os.O_RDONLY) dest_fd = os.open(dest, os.O_RDWR | os.O_CREAT) # Now send n bytes from # source file descriptor # to destination file descriptor # using os.sendfile() method offset = 0 count = 100 bytesSent = os.sendfile(dest_fd, src_fd, offset, count) print("% d bytes sent / copied successfully." % bytesSent) # Now read the sent / copied # content from destination # file descriptor os.lseek(dest_fd, 0, 0) str = os.read(dest_fd, bytesSent) # Print read bytes print(str) # Close the file descriptors os.close(src_fd) os.close(dest_fd)
100 bytes sent/copied successfully. b'Python is a widely used general-purpose, high level programming language. It was initially designed '
Referencia: https://docs.python.org/3/library/os.html#os.sendfile