У меня есть приблизительно 350 текстовых файлов, которые включают все содержание 5 папок на моем HD. Для каждого из этих файлов я хотел бы удалить конкретное количество символов в запуске и конце каждого файла. Я не знаю о AppleScript, но подозреваю, что это может подойти для того, чего я хочу достигнуть. Любая справка при автоматизации этого значительно ценилась бы, поскольку вручную редактирующий эти файлы грандиозная задача.Большое спасибо.
Следующий текст должен быть удален из запуска каждого файла:
STARTTYPE:RGIN
MODEXP:NO
Следующие потребности, которые будут удалены из конца каждого файла:
REFACTORSCALE:2.0
ENDTYPE:FACTORED
Есть ли в OS X команда unix sed? Она была разработана для решения именно такого типа проблем.
Вы можете сказать (предполагая, что текст для удаления одинаков в каждом файле):
sed -i 's/STARTTYPE:RGIN\nMODEXP:NO\n//' file_pattern
sed -i 's/REFACTORSCALE:2.0\nENDTYPE:FACTORED\n//' file_pattern
Например, допустим, нужно отредактировать кучу файлов .txt в этих 5 каталогах в вашем домашнем каталоге. Вы можете сделать:
sed -i 's/STARTTYPE:RGIN\nMODEXP:NO\n//' /home/Run_Loop/directory_1/*.txt
sed -i 's/REFACTORSCALE:2.0\nENDTYPE:FACTORED\n//' /home/Run_Loop/directory_1/*.txt
sed -i 's/STARTTYPE:RGIN\nMODEXP:NO\n//' /home/Run_Loop/directory_2/*.txt
sed -i 's/REFACTORSCALE:2.0\nENDTYPE:FACTORED\n//' /home/Run_Loop/directory_2/*.txt
sed -i 's/STARTTYPE:RGIN\nMODEXP:NO\n//' /home/Run_Loop/directory_3/*.txt
sed -i 's/REFACTORSCALE:2.0\nENDTYPE:FACTORED\n//' /home/Run_Loop/directory_3/*.txt
sed -i 's/STARTTYPE:RGIN\nMODEXP:NO\n//' /home/Run_Loop/directory_4/*.txt
sed -i 's/REFACTORSCALE:2.0\nENDTYPE:FACTORED\n//' /home/Run_Loop/directory_4/*.txt
sed -i 's/STARTTYPE:RGIN\nMODEXP:NO\n//' /home/Run_Loop/directory_5/*.txt
sed -i 's/REFACTORSCALE:2.0\nENDTYPE:FACTORED\n//' /home/Run_Loop/directory_5/*.txt