Hvordan du berører alle filer i subtree rekursivt Linux?

Hvordan du berører alle filer i subtree rekursivt Linux?
Touch er en kommando i Linux som brukes til å opprette og endre tidsstempene til en fil. I tillegg kan den lage filer uten innhold og en tidsstempel spesifisert av brukeren. Ofte har vi en katalog i Linux med flere underkataloger og filer, og vi ønsker å endre tidsstempene til hver underkatalog og fil.

I denne artikkelen vil vi se på hvordan du berører alle slike filer og underkataloger rekursivt, sammen med en omfattende oversikt over kommandoene som brukes til dette formålet.

Hva er berøringskommandoen, og hvordan du bruker den?

Hensikten med Touch -kommandoen i Linux er todelt; Den kan brukes til å lage tomme filer med en tidsstempel spesifisert av oss, og den kan brukes til å endre og endre tidsstemplene til allerede eksisterende filer. Det er en veldig nyttig kommando siden den kan endre et bredt spekter av tidsstempler, inkludert, men ikke begrenset til tilgang (forrige gang filen ble åpnet) og endret (forrige gang filen ble endret) tidsstempler. Vi vil liste opp noen av de vanlige bruken av Touch -kommandoen og deres formater.

  • Berøringsfilnavn: Oppretter en tom fil med navnet som er spesifisert av "filnavnet" -argumentet ".
  • Touch -A: Pleide å endre den siste tilgangstidsstempelet til en fil.
  • Touch -C: Sjekker om en fil med det spesifiserte navnet eksisterer eller ikke. Hvis en slik fil ikke eksisterer, unngår den å lage den.
  • Touch -C -D: Brukes til å oppdatere tilgangs- og modifiseringstiden.
  • Touch -M: Brukes til å oppdatere den siste modifiseringstiden for den spesifiserte filen.
  • Touch -r: Brukes til å lagre tidsstempelet til en annen fil som referanse.
  • Touch -T: Brukes til å lage en fil med en spesifisert tidsstempel.

Nå som vi har fått leserne kjent med den grunnleggende bruken av Touch -kommandoen, vil vi gå videre til å lære hvordan vi kan bruke den til å berøre alle filer og underkataloger i en undertree rekursivt.

Trinn 1 - Åpne en terminal

Vi bruker kommandolinjegrensesnittet for å berøre alle filer i en undertree rekursivt. For å begynne. Du kan åpne et terminalvindu enten ved å få tilgang til det via applikasjonsmenyen eller ved å trykke på tastatursnarveien Ctrl + ALT + T.

Trinn 2 - Utfør berøringskommandoen

For demonstrasjonsformål vil vi ta en eksempelkatalog for å fritt eksperimentere med Touch -kommandoen. I dette tilfellet er katalogen vår lokalisert i ~/eksempel. Det er klart, du bør følge med på katalogen du velger for å sikre maksimal læring. Du bør endre det i henhold til katalogen du vil berøre. Etter å ha satt riktig katalog, er alt som er igjen å utføre følgende kommando for å berøre alle filer og underkataloger i den spesifiserte mappen.

$ finn ~/Eksempel -Exec touch \;

Som vi så tidligere, er det mange varianter av berøringskommandoen som man kan utføre for å oppnå forskjellige formål. Et slikt tilfelle er når brukeren ønsker å skrive ut alle de aktuelle katalogene. Også dette kan faktisk gjøres gjennom Touch -kommandoen. Alt som må gjøres er litt modifisering i syntaks og tillegg av "-print" til kommandoen. Kjør kommandoen nedenfor for å teste ut utskriftsfunksjonen (det anbefales nok en gang at du sørger for at adressen er satt til ønsket katalog som må berøres).

$ finn ~/Eksempel -print -exec touch \;

Som du ser fra bildet over, blir katalogene ikke bare berørt, men også skrevet ut da vi kjørte forrige kommando.

Fordeling av kommandoene

Nå som vi har dekket hoveddelen av prosessen, kan de som er nysgjerrige på hvordan de tidligere kommandoene fungerte å holde seg rundt for å lære flere detaljer om dem. Denne delen vil bryte ned hver del av kommandoene vi utførte en etter en og gå gjennom funksjonalitetene deres.

Først av alt, la oss ta en titt på Find -kommandoen.

Find -kommandoen brukes til å se etter filer og kataloger i en bestemt katalog. Noen mulige metoder for bruken er gitt nedenfor.

  • Finn -navn: brukes til å søke etter et bestemt filnavn i en katalog.
  • finn -iname: pleide å gjennomføre et ufølsomt navnesøk.
  • finn -f: brukes til å finne en vanlig fil.
  • finn -d: brukes til å finne kataloger.
  • Finn -L: Brukes til å finne symbolske lenker.
  • Finn -C: Brukes til å finne karakterenheter.
  • Finn -B: Brukes til å finne blokkenheter.
  • Finn -S: Brukes til å finne stikkontakter

Nå bør du forstå hva Find -kommandoen gjør og hvordan du bruker den. I hovedsak viser den alle filene og katalogene på en adresse gitt av brukeren.

Fremover spesifiserer vi katalogen der vi ønsker å søke etter filer og kataloger.

-Print forteller terminalen om å vise filene og katalogene som kommandoen finner.

-Exec Touch utfører Touch -kommandoen på hver av de funnet filene og katalogene.

sørger for at navnene på filene og katalogene som de finner kommandolister blir videresendt til å berøre kommandoen som argumenter.

\; brukes til å flykte fra Exec -kommandoen.

Når det er sagt, har vi dekket formålet bak hver del av denne kommandoen.

Konklusjon

Denne artikkelen så på hvordan du berører alle filer i en undertree rekursivt ved hjelp av Find and Touch -kommandoer. Dessuten presenteres en oversikt over berøringen og Find -kommandoen, sammen med en oversikt over kombinasjonen deres som brukes til å liste og berøre filer i en undertree rekursivt.