Hvordan Navn en Unix File Med et datostempel

På Unix og Linux-systemer, kan "date" kommandoen brukes til å lage formatert dato og klokkeslett strenger for å navngi filer og kataloger. Datostempler er nyttige i skript og tidsbasert, eller "cron," jobber for å skape unike filnavn, skaper datobaserte katalogen strukturer og legge nyttig informasjon om filen. Dato-stemplet filnavn blir ofte brukt for automatisk sikkerhetskopiering og arkivering av filer og opprette midlertidige filer.

Bruksanvisning

1 Bruk "date" kommando for å generere datostreng du vil, ved hjelp av alternativet formatet til å formatere utgang. Formatet strengen er innledes med et plusstegn (+). Format sekvenser kan kombineres, og statiske tegn kan ispedd de tolket sekvenser. For eksempel, kommandoen "date +% F" utganger dagens dato i formatet ÅÅÅÅ-MM-DD-format. For den 25 november 2009, kommandoen ville output "2009-11-25". Vanlige format sekvenser inkluderer:

% D: dato i m / d / y-format
% T: tid i HH: MM: SS-format
% M: minutt, polstret med 0-tallet (00..59)
% H: time, 24-timers klokke, polstret med 0-tallet (01..23)
% I: time, 12-timers klokke, polstret med 0-tallet (01..12)
% D: Dagen i måneden, polstret med 0-er
% M: måned, polstret med 0-tallet (01..12)
% Y: to siste sifrene i året (00..99)
% Y: år

Vis flere format sekvenser og informasjon om date-kommandoen ved å vise den manuelle (kommandoen "man date").

2 Test dato stemplet filnavnet ved hjelp av "echo" kommando. Omgir hele date-kommandoen med backticks, laget ved å trykke på aksent grav ( ), which is on the same key as the tilde (~) on US keyboard layouts. For example, the command: "echo myMonthlyBackup_ ), which is on the same key as the tilde (~) on US keyboard layouts. For example, the command: "echo myMonthlyBackup_ date +% Y-% M_% B`.bak" utganger: myMonthlyBackup_2009-11_November.bak.

3 Bruk datostemplet filnavn i kommandoen du ønsker å kjøre. Følgende eksempel oppretter en katalogstruktur med år, måned og dag i gjeldende arbeidskatalog (2009/11-November / 25 for 25 november 2009):
"mkdir -p date +%Y / date +%m-%B / date +%d ". Dette eksempelet kopier process.log å behandle [datostemple] .log.old: "cp process.log prosess date +%Y-%m-%d_%H%M .log.old".

Hint

  • Hvis du ofte lage en date-stemplet filnavn på kommandolinjen ved hjelp av samme dato formatering sekvens, lage et script eller alias som en snarvei for din kommando for å spare noen få tastetrykk.
  • Sørg for å legge nok raffinement til datostempelet for å sikre filen vil ikke være et uhell overskrives. Legg den tiden, som detalj sekunder (% S) eller nanosekunder (% N), om nødvendig.