Skabelon til Shell-Script: Liste og Behandle Mappenavne | Grundlæggende Guide

Er der nogen, der har en skabelon til et shell-script, der bruger ls til at få en liste over mappenavne og derefter looper gennem hver enkelt for at udføre en handling? Planen er at bruge ls -1d */ for at få listen over mappenavne.

Skabelonen til shell-scriptet bruger `ls -1d */` til at liste mappenavne og looper derefter gennem hver mappe for at udføre en handling, som kan tilpasses efter behov.

Skabelon til Shell-Script for at Liste og Behandle Mappenavne

Ja, her er en grundlæggende skabelon til et shell-script, der bruger ls -1d */ til at få en liste over mappenavne og derefter looper gennem hver enkelt mappe for at udføre en handling:

#!/bin/bash

# Få en liste over mappenavne
for dir in $(ls -1d */); do
    # Fjern den afsluttende skråstreg fra mappenavnet
    dir=${dir%/}
    
    # Udfør en handling på hver mappe
    echo "Behandler mappe: $dir"
    
    # Tilføj din handling her
    # Eksempel: skift til mappen og udfør en kommando
    # cd "$dir" && 
    
done

Her er en forklaring på, hvad scriptet gør:

  • #!/bin/bash: Angiver, at scriptet skal køres med Bash.
  • for dir in $(ls -1d */); do: Bruger ls -1d */ til at få en liste over mappenavne og looper gennem hver mappe.
  • dir=${dir%/}: Fjerner den afsluttende skråstreg fra mappenavnet.
  • echo "Behandler mappe: $dir": Udskriver navnet på den mappe, der behandles.
  • # cd "$dir" && : Et eksempel på, hvordan du kan skifte til mappen og udføre en kommando. Denne linje er kommenteret ud og skal tilpasses efter dine behov.

Du kan tilføje dine egne handlinger i stedet for echo-kommandoen eller efter cd-kommandoen, afhængigt af hvad du ønsker at opnå med scriptet.