Я пытаюсь заменить все вхождения строки:заменить все вхождения строки
https://support.office.com/en-us/article/Check-for-accessibility-issues-a16f6de0-2f39-4a2b-8bd8-5ad801426c7f?ui=en-US&rs=en-US&ad=US
с xyz
. Это должно быть сделано для всех файлов в текущем каталоге.
Я использовал следующую команду:
find . -type f | xargs sed -i 's/https\:\/\/support\.office\.com\/en\-us\/article\/Check\-for\-accessibility\-issues\-a16f6de0\-2f39\-4a2b\-8bd8\-5ad801426c7f\?ui\=en\-US\&rs\=en\-US\&ad\=US/xyz/g';
Но это ничего не сделал. Я думаю, что то, как я избегаю специальных персонажей, ошибочно. Как это исправить?
Прямо сейчас, я префикс каждого не-буквенно-цифрового символа \
.
@anukul, вы должны посмотреть, что такое специальные символы в BRE. Я думаю, что в вашем примере вам просто нужно избежать '.' (точка) – Kent
Хорошо, и как сменить разделитель? – anukul
@anukul последний код строки в моем ответе - это пример, я выбрал '@'. это по умолчанию '/', вам нужно избегать всех косых черт, я думаю, что у вас много в веб-URL. – Kent