заменить путь unix внутри файла

У меня есть sql-файл базы данных wordpress. Я перехожу на другой сервер, у которого корень документа отличается.

В корне старого документа был /home/saeid/public_html

Новый корень документа – /home/saeid/www/domain.com/html

Я хочу заменить все вхождения старого пути новым путем.

Я видел этот пример, который заменяет foo на bar … но поскольку я хочу заменить путь, который сам имеет в нем символы «/» … Я не уверен, что это будет работа. sed -i -e 's/foo/bar/g' filename

Просто используйте другой разделитель:

 sed -i 's|foo|bar|g' filename 

Итак, в вашем случае:

 sed -i 's|/home/saeid/public_html|/home/saeid/www/domain.com/html|g' file 

Это упоминается в info sed :

Синтаксисом команды s (как в подстановке) является 's / regexp / replacement / flags'. Символы / могут быть равномерно заменены любым другим одиночным символом в любой заданной команде s. Символ / (или любой другой символ используется вместо него) может появляться в регулярном выражении или замене, только если ему предшествует символ \.