В Unix имя файла будет содержать косые черты (/
), которые являются специальными символами для sed, поэтому я рекомендую этот более простой подход, который записывает имя файла в bottom файла:
find . -name '*.jsp' -exec sh -c "echo '<\!-- {} -->' >> '{}'" \;
Чтобы записать имя файла в top файла, используйте это:
find . -name '*.jsp' -exec sh -c \
'echo "<!-- {} -->" > "{}.new" && cat "{}" >> "{}.new" && mv "{}.new" "{}"' \;
N.B. Имя файла может содержать символы, которые могут сделать ваш HTML недействительным, например, &
, хотя я сомневаюсь, что JSP может иметь такое странное имя.