vaciar archivo en linux


4 formas de vaciar o eliminar el contenido de los archivos en Linux
De vez en cuando, al tratar con archivos en la terminal Linux, es posible que se quiera borrar el contenido de un archivo sin necesidad de abrirlo utilizando cualquier editor de línea de comandos de Linux. Pero ¿Cómo se puede lograr esto? En este artículo, vamos a pasar por varias formas diferentes de vaciar el contenido del archivo con la ayuda de algunos comandos útiles.

Antes de comenzar hay que tener en cuenta que, en Linux todo es un gran archivo, siempre se debe asegurar de que los archivos que se estén vaciando no son archivos de usuario o de sistema importantes. El borrado del contenido de un sistema crítico o de un archivo de configuración podría provocar un fallo o error fatal en la aplicación o el sistema.
Con esto dicho, a continuación se indican los medios de borrar el contenido del archivo desde la línea de comandos. Hay que recordar que para el propósito de este artículo, se ha utilizado el archivo access.log en los ejemplos.
Forma #1
Para vaciar el contenido de un archivo reduciéndolo hasta que sea nulo. Una forma más sencilla de vaciar o liberar espacio de algún contenido de cualquier archivo mediante el redireccionamiento de shell null (objeto no existente) al archivo como se muestra a continuación:
# > access.log
Forma #2
Otra forma de vaciar archivos en Linux es utilizando el comando true. Aquí vamos a utilizar un símbolo, el cual es un shell de comandos integrados, siendo así la esencia equivalente al comando true y puede ser utilizado como un no-op (sin operación). Otro método es redirigir la salida del mismo, o el comando incorporado true al archivo como se muestra a continuación:
# : > access.log
O también
# true > access.log
Forma #3
Utilizando los comandos cat / cp / dd con / dev / null también es una buena opción para vaciar cualquier archivo. En Linux, la herramienta null se utiliza básicamente para descartar los flujos de salida no deseados de un proceso, o bien para vaciar fácilmente los flujos de entrada de archivos.
Esto se hace normalmente mediante un mecanismo de redirección.
Por lo que las herramientas / dev / null son, por lo tanto, un archivo especial que sobreescribe (elimina) cualquier entrada enviada a ella, o su salida, que sea la misma que la de un archivo vacío.
Además, se puede vaciar contenido de un archivo redirigiendo la salida de / dev / null a él (archivo) como entrada usando el comando cat:
# cat /dev/null > access.log
Aunque también se puede utilizar el comando cp para vaciar el contenido de los archivos, como se muestra a continuación.
# cp /dev/null access.log
Nuestra cuarta manera de vaciar archivos es mediante el comando echo. Con este comando se puede vaciar el objetivo fácilmente y redirigir a cualquier archivo. Siendo así:
# echo “” > access.log                 y/o
# echo > access.log
Se debe tener en cuenta que una cadena vacía no es igual a null. Una cadena ya es un objeto que puede estar vacío, mientras que null significa simplemente que no existencia el objeto.
Por esta razón, al redirigir la salida del comando echo, como se muestra arriba, en el archivo y ver el contenido del archivo utilizando el comando cat, se imprime una línea vacía (cadena vacía).
Para enviar una salida nula al archivo, hay que utilizar el indicador -n que indica al echo que no emite la nueva línea de salida que conduce a la línea vacía producida en el comando anterior.
# echo -n “” > access.log
Forma #4
Y finalmente, existe la posibilidad de utilizar el comando truncate.
El comando truncate ayuda a reducir o ampliar el tamaño de un archivo a un tamaño definido. Se puede utilizar con la opción -s que especifica el tamaño del archivo. Para vaciar un contenido del archivo, utilice un tamaño de 0 (cero) como en el siguiente comando:
# truncate -s 0 access.log

Comentarios

Entradas populares de este blog

comando cd en linux para ser usado en bash