Intereting Posts
grep шаблон, который не имеет точки после него Принуждение системы позволить мне вставить любой символ в имя файла Можно ли задавать одно задание на определенный час с помощью анакрона Сценарий оболочки для назначения значений из таблицы поиска слишком медленный Книга или онлайн-статья по анализу и настройке производительности системы Linux Ubuntu 16.04 машина в качестве маршрутизатора изменить пользовательские системные переменные (число) удаленной серверной машины с помощью ssh? Раскрашивание среды терминала и оболочки? Определение конкретного процессора, на котором запущен процесс FTP через SSL в AIX (UNIX) Почему у той же версии Debian разные версии ядра? Как скопировать несколько файлов с одним и тем же именем из каталога детей в другой каталог без потери родительского каталога? Заменить временной столбец текущим временем Режим установки режима «Только в режиме READ-WRITE» Мониторинг доступа к кешу страниц / памяти файлов

Замените строку, включая косую черту «/», используя команду sed

Как заменить строку I1Rov4Rvh/GtjpuuYttr== на mytest в файле mtestsed.properties с помощью команды sed ?

Я пытался:

 sed -e -i 's/I1Rov4Rvh/GtjpuuYttr==/mytest/g' mtestsed.properties 

Проблема заключается в том / в тексте, который вы хотите заменить. Это особый символ для sed и поэтому вам нужно избежать его с помощью \ . Также, как указано в комментариях: команда также терпит неудачу из-за опции -e которая ожидает сценарий.

Это должно работать:

 sed -i 's/I1Rov4Rvh\/GtjpuuYttr==/mytest/g' mtestsed.properties 

sed delimiter может быть любым символом, точно для случая, когда вам нужно заменить строку на /

или

  • escape / symbol:

     sed -i 's/I1Rov4Rvh\/GtjpuuYttr==/mytest/g' 
  • используйте другой разделитель:

     sed -i 's|I1Rov4Rvh/GtjpuuYttr==|mytest|g' 

     sed -i 's:I1Rov4Rvh/GtjpuuYttr==:mytest:g'