У меня есть две директории, S и T, каждая из которых содержит 150 файлов. Имена файлов идентичны, поэтому, например, если S содержит файл1, файл2, ..., файл150, то T также содержит файл1, файл2, ..., файл150. Каждый файл в S содержит именно этот код:
<a href="index.php">Home</a> → <a href="page1.php">Page 1</a>
→ NAME1 <a href="A.php"> &rarr Previous</a> <a href="B.php">Next &rarr </a>
, где все идентично во всех 150 файлах, кроме NAME1, то есть NAME2 для файла2, NAME3 для файла3, et c.
Каждый файл в T содержит именно этот код:
<a href="index.php">Home</a> → <a href="page1.php">Page 1</a>
→ STRING1 <a href="X1.php"> &rarr Previous</a> <a href="Y1.php">Next &rarr </a>
, где STRING1 для файла1, STRING2 для файла2 и т. Д. c. являются (довольно длинными) строками другого кода, который изменяется для каждого файла, и X1, Y1 также различны для каждого файла: X2, Y2 для файла2, X3, Y3 для файла3 и т. д. c.
Я хотел бы написать сценарий оболочки, который заменяет строки X1, Y1, найденные в T / file1, на строки A, B в S / file1, X2, Y2, найденные в T / file2, на строки A, B в S / file2 и так далее. Я работаю с Терминалом на Ма c или на компьютере с Ubuntu. Я выполнил поиск в Интернете и на этом форуме и попытался использовать sed и awk, но я не смог заставить что-либо работать правильно. Спасибо за любую помощь или предложения.
Я приведу пример с двумя файлами вместо 150. Предположим, у меня готов сценарий к go. Перед выполнением сценария в каталоге S есть файл file1 с содержимым
N1 A B
и файл file2 с содержимым
N2 A B
, а в каталоге T есть файл file1 с содержимым
S1 X1 Y1
и файл file2 с содержимым
S2 X2 Y2
После выполнения сценария S имеет файл file1 с содержимым
N1 X1 Y1
и файл file2 с содержимым
N2 X2 Y2
пока каталог Т не изменился.
Я бы хотел, чтобы это было сделано для всех 150 файлов при запуске сценария.