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.