Pieņemsim, ka jums ir katalogs ar simtiem failu ar nepareiziem failu nosaukumiem, un jūs vēlaties aizstāt visus faila nosaukumus, kas satur pārbaude ar prod. (šis ir veidots piemērs). Mēs to varam viegli izdarīt ar "for" komandu bash, kopā ar mazliet bash labestību. Šodien mēs uzzināsim, kā aizstāt tekstu ar mainīgo ciklā.
Komandu "par" darbojas šādi:
for var in ;do $var;done
Jūs varat nomainīt
Tas ir tas, ka apstrāde ar bash mainīgumu padara to vēl interesantāku. Tā vietā, lai vienkārši darītu kaut ko līdzīgu "mv $ var", mēs varam aizstāt tekstu faila nosaukumā, izmantojot šo sintaksi:
${var/originaltext/replacetext}
Tātad tagad, ja mēs palaistu šo komandu mūsu direktorijā:
for f in *;do mv $f ${f/test/prod};done
Katram failam, kas ir saskaņots ar *, bash izpildīs līdzīgu komandu:
mv test.config prod.config
Es atklāju, ka, zinot čaulu, ir nenovērtējama, pārvaldot serverus vai vienkārši pārvaldot failu kolekciju, un esmu ietaupījis stundas par to, kas citādi būtu manuāls darbs.
Un jā, es saprotu, ka ir vairāki rīki, kas var veikt vairāku failu pārdēvēšanu.