¿Cómo puedo editar un file sin alterar su date de modificación?

¿Cómo puedo editar un file sin alterar su date de modificación? En línea de command. ¿Es capaz de eso?

  • ¿Hay alguna manera de que iOS recuerde las passwords de los sitios autenticados por HTTP?
  • Automator no ejecutará mi script bash shell
  • ¿Cómo se guarda una variable ambiental?
  • Eliminar la count de Facebook existente de OS X
  • ¿Cómo puedo inspeccionar las variables de entorno de un process en ejecución?
  • Comando de terminal para search actualizaciones de iOS
  • Equivalente de Linux `` ps f` (vista de tree) en OSX?
  • ¿Cómo colocar un file en una aplicación GUI desde la command-line?
  • Encuentre aplicaciones específicas por nombre, obteniendo su versión, a través de la línea de command
  • Copie los contenidos de una carpeta inteligente a una nueva carpeta en Mountain Lion
  • ¿Cómo se relaciona 'stuck' (en los resultados de 'top') con 'no responder' (en Activity Monitor), 'spin' o 'hang'?
  • Cómo ejecutar apple y git personalizado uno al lado del otro
  • 2 Solutions collect form web for “¿Cómo puedo editar un file sin alterar su date de modificación?”

    La única forma en que puedo pensar es almacenar su date de modificación antes de alterarla y luego volverla a configurar.

    No conozco ninguna herramienta CLI que te permita hacer eso, sin embargo, hace años escribí algo en C que solía establecer la date de modificación en un file con un valor arbitrario. Sé que esta no es la respuesta que está buscando, pero lo haría de la siguiente manera:

    1. obtenga el time de acceso original y el time de modificación para un file, antes de modificarlo. Para esto, puede usar la llamada al sistema stat() (lea más al respecto emitiendo la man 2 stat ).
    2. altera el file, usando vi o cualquier otro editor que te guste
    3. establecer el time de modificación de nuevo a lo que era. Esto se puede hacer usando la llamada a utimes() (de nuevo, puede leer más al emitir el command man 2 utimes ). Tenga en count que utimes() establece el time de acceso y la hora de modificación.

    Editar

    En realidad, parece que ya hay una herramienta de CLI que puede hacer eso. De acuerdo con esta respuesta: ¿Cómo cambiar la date / hora de creación (st_birthtime) de un file en Lion? , puede usar el command touch para cambiar esos times: touch -m cambia el time de modificación y touch -a cambia el time de acceso (puede usar ambas opciones en una llamada). Todo lo que necesitaría hacer entonces es usar la línea de command stat en el file antes de modificarlo y mostrar sus times de acceso y modificación. A continuación, realice la edición y, a continuación, touch para establecer los times de acceso / modificación en sus valores antes de la edición.

    Puede usar touch -t para cambiar los times de modificación y acceso, toque -m para cambiar la hora de modificación, o toque -a para cambiar el time de acceso. Todos ellos también cambian el time de creación si el time objective es anterior al time de creación original.

     $ ls -lT test.txt -rw-r--r-- 1 lauri staff 3 Nov 3 15:13:42 2013 test.txt $ date -jf %s $(stat -f%m test.txt) +%Y%m%d%H%M.%S 201311031513.42 $ vi test.txt $ ls -lT test.txt -rw-r--r-- 1 lauri staff 3 Nov 3 15:18:18 2013 test.txt $ touch -t 201311031513.42 test.txt $ ls -lT test.txt -rw-r--r-- 1 lauri staff 3 Nov 3 15:13:42 2013 test.txt 

    stat -f% m especifica la cadena de formatting como la hora de modificación. En la date -jf, -j desactiva la configuration de la hora y -f especifica el formatting.

    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).