Mājas lapa » » Shell Geek Pārdēvējiet vairākus failus vienlaicīgi

    Shell Geek Pārdēvējiet vairākus failus vienlaicīgi

    Pieņemsim, ka jums ir katalogs ar simtiem failu ar nepareiziem faila nosaukumiem, un vēlaties nomainīt katru faila nosaukumu, kas satur pārbaude ar prod. (tas ir izdomāts piemērs). Mēs varam to viegli izdarīt ar komandu “for” bash kombinācijā ar mazliet labas gribas. Šodien mēs uzzināsim, kā aizstāt tekstu mainīgā formātā cilpā.

    “For” komanda darbojas šādi:

    for var in; do $ var; izdarīts

    Jūs varat nomainīt ar jebkuru faila atbilstības modeli, piemēram, * vai * .txt, un jūs varat nomainīt ar jebkuru linux komandu. Komandu izpildīs pēc kārtas katrā failā, kas atbilst faila atbilstības modelim.

    Tas ir, ja mainīgais mainīgais režīms padara to vēl interesantāku. Tā vietā, lai darītu kaut ko līdzīgu “mv $ var”, mēs varam aizstāt faila nosaukumu ar šo sintaksi:

    $ var / originaltext / substitetext

    Tātad, tagad, ja palaist šo komandu mūsu direktorijā:

    par f in *; veic mv $ f $ f / test / prod;

    Par katru failu, kas atbilst *, bash izpildīs līdzīgu komandu:

    mv test.config prod.config

    Es atklāju, ka zināšanas par apvalku ir nenovērtējamas, administrējot serverus vai vienkārši pārvaldot failu kolekciju, un esmu saglabājis man stundas, kas citādi būtu manuāli.

    Un jā, es saprotu, ka ir vairāki rīki, kas var veikt vairāku failu pārdēvēšanu.