Shell Geek Több fájl átnevezése egyszerre
Tegyük fel, hogy van egy könyvtár, amely több száz fájlot tartalmaz, helytelen fájlnevekkel, és minden fájlnevet cserélni szeretne teszt val vel döf. (ez egy kitalált példa). Ezt könnyen elvégezhetjük a bash „for” parancsával, egy kis bash jósággal kombinálva. Ma megtanuljuk, hogyan cseréljünk egy változó szövegét egy hurokba.
A „for” parancs így működik:
for var in; do $ var; kész
Cserélheti bármilyen fájlmegfelelési mintával, például * vagy * .txt, és helyettesítheti bármilyen linux parancsgal. A parancs fut a sorrendben a fájl egyezési mintájával megegyező fájlokban.
Ez az, ahol a bash változó kezelése még érdekesebbé teszi. Ahelyett, hogy csak valami mv $ var-t szeretne csinálni, a fájlnevet a szintaxissal helyettesíthetjük:
$ Var / originaltext / replacetext
Tehát most, ha ezt a parancsot futtatjuk a könyvtárunkban:
f esetén *, mv $ f $ f / test / prod;
Minden * -hoz illeszkedő fájlhoz a bash egy hasonló parancsot hajt végre:
mv test.config prod.config
Megállapítottam, hogy a héj ismerete felbecsülhetetlen a szerverek adminisztrációja vagy csak a fájlgyűjtés kezelésére, és időt takarított meg nekem, ami egyébként manuálisan működött volna.
És igen, rájöttem, hogy számos eszköz képes több fájl átnevezésére.