У меня есть ряд папок, содержащих три файла, которые я хочу объединить как часть сценария.
Эти три файла называются file.html1 file.html2 file.html3. Я хочу объединить их в file.html
Я использую этот цикл:
find . -name "file.html" -print0 | while IFS= read -r -d '' n; do
perl -i.bak -0pe 's/<\/h2>\n(.*?\n)*/<\/h2>\n/' "$n" #extract 1st part of file.html and create .bak
perl -i -0pe 's/(.*\n)*.*?<\/h2>\n//' "$n.bak" #extract 2nd part of file.html
rename 's/\.html/\.html1/' $n
rename 's/\.bak/3/' $n.bak
cat $n1 $n2 $n3 >> $n
done
Этот скрипт разбивает оригинальный файл file.html на file.html1 и file.html3. file.html2 был создан ранее в сценарии.
Проблема с командой cat. Как я могу объединить их в этом случае, а затем удалить три фрагмента? Язык не важен.