GNU/Linux >> Linux Esercitazione >  >> Linux

Formato preferito dei nomi di file che includono un timestamp

Soluzione 1:

  1. Il formato ISO 8601 dovrebbe essere rispettato il più possibile, poiché è la cosa più vicina a uno standard.
  2. La "T" non è un ostacolo sufficiente per giustificare davvero l'eliminazione.
  3. I ':sono potenzialmente assassini, quindi dovrebbero essere evitati.
  4. Per i motivi menzionati nelle risposte degli altri, dovrebbe essere utilizzato UTC (o ora "Z").
  5. ISO 8601 include un formato che utilizza UTC (ora "Z"), che dovrebbe essere utilizzato.
  6. ISO 8601 include un formato che non utilizza il carattere ':', che dovrebbe essere utilizzato.

Quindi... esempi di formati data-ora 'migliori':

  1. 20120317T1748Z

    • 100% conforme alla norma ISO 8601
    • Solo caratteri alfanumerici (molto intuitivo per gli amministratori di sistema)
    • non il più veloce da leggere, ma sicuramente leggibile dai profani
  2. 2012-03-17T1748Z

    • la parte della data è conforme alla norma ISO 8601
    • la parte temporale è conforme alla norma ISO 8601
    • la transizione tra data e ora è conforme alla norma ISO 8601
    • mescola il formato "esteso" ISO 8601 (data con trattini, ora con due punti) con il formato "base" ISO 8601 (data senza trattini, ora senza due punti), che probabilmente non è del tutto corretto
    • aggiunge il carattere '-' (invece di 1.)
    • un po' più facile da leggere per i profani (vs 1.)
  3. 2012-03-17--1748Z

    • la parte della data è conforme alla norma ISO 8601
    • la parte temporale è conforme alla norma ISO 8601
    • la transizione tra data e ora non è conforme alla norma ISO 8601
    • mescola il formato 'esteso' ISO 8601 con il formato 'base' ISO 8601
    • un po' più facile da leggere per i non addetti ai lavori (rispetto a 1. e 2.)
    • nessun nuovo personaggio (vs 2.)

Sono parziale a 1. poiché è completamente IAW lo standard, ma gli altri sono vicini.

Nota::aggiungi secondi se necessario, ovviamente. ...e sì, con o senza secondi (o anche minuti) è tutto IAW ISO 8601. :)

Soluzione 2:

Non includerei un fuso orario, userei solo l'ora universale. In caso di confusione, puoi aggiungere un suffisso -UTC. Se specifichi un fuso orario, qualcuno potrebbe dipendere da esso. E ci sarebbero strani casi limite in cui le modifiche all'ora legale o gli spostamenti dell'ora legale provocano il caos su alcune elaborazioni o l'elaborazione è diversa su alcuni sistemi perché la loro configurazione dell'ora legale non è aggiornata. UTC è sempre lo stesso ovunque.

Penso che i trattini rendano il nome del file più leggibile, nel senso che rende più facile discernere la data e l'ora dei dati del file. Se vuoi includere una precisione inferiore al secondo, di solito è .nnnnn.

Personalmente non mi piace la T. L'uso dei due punti nel nome di un file può influire sull'interoperabilità con altri file system.


Linux
  1. a.out sostituito dal formato di file ELF?

  2. Includi file aggiuntivi in ​​.bashrc

  3. Formato file core dump

  4. Aggiunta di timestamp a un nome file con mv in BASH

  5. Modifica del formato della data in syslog

Come montare file ISO su Linux

Scrittura USB multipla su Linux

Come montare un file ISO in Linux?

AWK e nomi di file con spazio al suo interno.

Formato archivio indicizzato?

Riformatta il timestamp in un file delimitato da pipe