Есть текст:
1492.10.1 = { discovered_by = CAS } # Christopher Columbus
1516.1.23 = { discovered_by = SPA }
Надо заменить на:
1443.10.1 = { discovered_by = TOR } # Christopher Columbus
1516.1.23 = { discovered_by = SPA }
Выполняю:
sed 's/1492\.\([0-9]{1,2}\.[0-9]{1,2}\) = { discovered_by = CAS }/1443\.\1 = { discovered_by = TOR }/g' provinces/1526\ -\ Coast\ of\ Hispaniola.txt
Никакой реакции, хотя grep -P находит по данному регексу строчку.
В принципе пойдет и более простой вариант:
1443.1.1 = { discovered_by = TOR } # Christopher Columbus
1516.1.23 = { discovered_by = SPA }
Для этого я пробовал:
sed 's/1492\.[0-9]{1,2}\.[0-9]{1,2} = { discovered_by = CAS }/1443\.1.1 = { discovered_by = TOR }/g' provinces/1526\ -\ Coast\ of\ Hispaniola.txt
Но тоже никакой реакции.