Verificer Ændringstidspunkt for Filer i Linux med Bash-Kommandoer

Hvordan kan det verificeres, at file2 blev sidst ændret efter file1 ved hjælp af en bash- eller Linux-kommando baseret på ændringstidspunktet?

For at verificere, at file2 blev sidst ændret efter file1 ved hjælp af en bash- eller Linux-kommando, kan du bruge `stat -c %Y` for begge filer og sammenligne tidspunkterne med en betingelse i bash.

Hvordan kan det verificeres, at file2 blev sidst ændret efter file1 ved hjælp af en bash- eller Linux-kommando baseret på ændringstidspunktet?

For at verificere, at file2 blev sidst ændret efter file1 ved hjælp af en bash- eller Linux-kommando, kan du bruge følgende fremgangsmåde:

  1. Brug stat kommandoen til at hente ændringstidspunkterne for begge filer.
  2. Sammenlign ændringstidspunkterne ved hjælp af en simpel betingelse i bash.

Her er et eksempel på, hvordan du kan gøre dette:

if [ "$(stat -c %Y file2)" -gt "$(stat -c %Y file1)" ]; then
  echo "file2 blev sidst ændret efter file1"
else
  echo "file2 blev ikke sidst ændret efter file1"
fi

Forklaring af kommandoerne:

  • stat -c %Y file: Henter ændringstidspunktet for filen i sekunder siden epoken (1970-01-01 00:00:00 UTC).
  • [ ... ]: Bash betingelsesudtryk.
  • -gt: Betyder "større end" i bash betingelsesudtryk.

Ved at bruge denne metode kan du nemt verificere, om file2 blev sidst ændret efter file1 baseret på deres ændringstidspunkter.