У меня есть большой набор файлов, в которых мне нужно заменить полную схему URL. Некоторые имена файлов содержат пробелы. После долгих поисков, риалов и ошибок, это самое близкое, что я пришел:
find /somedir -type f -print0 -exec sed -i'' -e 's#http\\:\\/\\/domain.com#https\\:\\/\\/www.domain.com#g' {} +
Полученный файл имеет схему http:
удален, оставляя //
- т.е. "//www.domain.com"
Кроме того, создается НОВЫЙ файл, добавляющий -e
к имени файла. - т.е. some file.php-e
который явно нежелателен.
Хотя этого вполне достаточно (после удаления файлов *-e
OCD во мне действительно хочет знать, как это сделать правильно). Примечание: я работаю локально на Mac, но также буду выполнять это на Linux.
Любые идеи с благодарностью!