Editando archivos en uso

Leyendo el manual de rsync(1), en la documentación de la opción --inplace avisa de que:

In-use binaries cannot be updated (either the OS will prevent this from happening, or binaries that attempt to swap-in their data will misbehave or crash).

Resulta que hace un tiempo había intentado hacer un programa que modificara su propio binario para guardar datos (sin ningún motivo concreto), pero resultaba en errores al modificar el propio archivo mientras aún estaba en uso, además es posible (en sistemas POSIX) eliminar archivos en uso. La lectura de la opción de antes encendió una bombilla, he aquí ese programa que modifica su binario para guardar un número, lo hace continue.

Editing files in place

Reading the rsync(1) manpages, the option --inplace doc­u­men­ta­tion alerts of:

In-use binaries cannot be updated (either the OS will prevent this from happening, or binaries that attempt to swap-in their data will misbehave or crash).

Some time ago I tried to write a program which would modify it's own binary to save data (without a specific motivation), but it resulted in errors when modifing it's binary while in use, also, it's possible (in POSIX systems) to delete files used in that moment. The read of the option above showed a viable path to do this, so here is the program which modifies it's own binary to save a number, continue.