Kør Flere Kommandoer på Fundne Filer med Find: Effektive Metoder og Eksempler

Hvordan kan der køres flere kommandoer på fundne filer, når "find . -exec cmd1; cmd2" ikke virker, da cmd2 køres efter cmd1 er udført på hver fil?

For at køre flere kommandoer på fundne filer med "find . -exec cmd1; cmd2", kan du bruge metoder som "sh -c", "xargs" eller flere "-exec" muligheder for at sikre, at begge kommandoer køres på hver fil.

Hvordan kan der køres flere kommandoer på fundne filer, når "find . -exec cmd1; cmd2" ikke virker, da cmd2 køres efter cmd1 er udført på hver fil?

For at køre flere kommandoer på fundne filer med find-kommandoen, kan du bruge følgende metoder:

  • Brug af sh -c:

    Du kan bruge sh -c til at køre flere kommandoer i en enkelt -exec mulighed.

    find . -exec sh -c 'cmd1 "$0"; cmd2 "$0"' {} \;
  • Brug af find med xargs:

    Du kan også bruge xargs til at køre flere kommandoer på fundne filer.

    find . -print0 | xargs -0 -I {} sh -c 'cmd1 "$0"; cmd2 "$0"' {}
  • Brug af find med exec og ;:

    En anden metode er at bruge find med flere -exec muligheder.

    find . -exec cmd1 {} \; -exec cmd2 {} \;

Disse metoder sikrer, at begge kommandoer køres på hver funden fil, uden at den anden kommando venter på, at den første kommando er færdig med at køre på alle filer.