sed -i '1d;' *.js
просто, и удалит первую строку из каждого файла javascript.
вы могли бы сделать это немного более четко в python, но вы сказали, что 1-я строка в каждом файле * .js, нет?
еще лучше, вы можете рассмотреть perl
Python будет работать, но душа Python не является искаженной быстрой однострочностью, и для чего-то подобного вам нужна быстрая безболезненная однострочная строка.
perl -pi.bak -e 's/^document.*lcbmc.*\n//g' *.js
, если вы запускаете это в командной строкеон будет соответствовать любой строке, которая начинается с документа и содержит lcbmc (включая строку \ n - new), и полностью удалит эту строку.Обратите внимание, что i.bak создает файл резервной копии .bak всего.Вы можете посоветовать сохранить это, так как вы можете «испортить»
, потом просто запустить
rm -v *.js.bak
ОБНОВЛЕНИЕ
По комментариям Iпредложите запустить скрипт perl в dir-файле * .js или используйте find
find /startDir/ -iname '*.js' -exec perl -pi.bak -e 's/^document.*lcbmc.*\n//g' {} \;
, который будет:
1. если вы указали правильный путь
2. выполнить perl один-линер найденных ({}) файлов.
3. побег;(\;) используется для объединения команды,
4, поэтому она будет исполняться
perl -pi.bak -e 's/^document.*lcbmc.*\n//g' found-item-1.js; perl -pi.bak -e 's/^document.*lcbmc.*\n//g' found-item-2.js
и т. д ... Некоторые версии find support + whichВы можете наблюдать поведение в следующем вопросе: find \;VS +
ПРИМЕЧАНИЕ: вы можете использовать несколько путей с find.
find /var/www/*.js /home/eric/.apache/*.js
найдет файлы в папке / var / www / и в папке ~ / .apache с файлами * .js.