🢂Zamiana ciągu znaków w pliku np. kolorów w svg ‑ Perl

Używam go do zamiany wystąpienia koloru we wszystkich plikach SVG w bieżącym katalogu i podkatalogach.

W skrócie, kod działa w następujący sposób:

W efekcie kod ten zastępuje wszystkie wystąpienia koloru $1 kolorem $2 we wszystkich plikach z rozszerzeniem .svg w bieżącym katalogu i wszystkich podkatalogach.

Upewnij się, że skrypt jest używany ostrożnie, ponieważ modyfikuje pliki w miejscu (bez tworzenia kopii zapasowych).

  • Utwórz plik
>zamiana.sh
  • Kod do pliku

  • Chmod

chmod +x zamiana.sh
  • Jak go używać (można go dodać do .bash_aliases)
# Zastąpienie koloru szarego kolorem czarnym:
./zamiana.sh #808080 #000000

Wersja 1

Zamienia kolory z parametrów

#!/bin/bash
perl -pi -e 's/$1/$2/g' $(grep -rl svg *)

Wersja 2

Podmienia #000000 na #C94042

#!/bin/bash
perl -pi -e 's/#000000/#C94042/g' $(grep -rl svg *)

Wersja do .bash_aliases

$3 to trzeci argument przekazany skryptowi. Reprezentuje rozszerzenie pliku, które chcesz przeszukać.

alias podmien='perl -pi -e 's/$1/$2/g' $(grep -rl $3 *)'