Мне нужно заменить строку в HTML SED не работает

Вы можете использовать « удаленное выполнение ssh »:

$> ssh user@debianserver mv /home/user/Downloads/file_xy /media/user/External

Для простоты использования добавьте локальный ssh открытый ключ к известным ключам на сервере Debian, поэтому вам не нужно каждый раз вводить пароль для учетной записи пользователя :

$> ssh-copy-id user@debianserver
0
21.11.2018, 12:23
1 ответ

В этой команде

sed 's/xyxx/$date1/' /u001/Scripts/abc.html > /u001/Scripts/abc.html 

сначала происходит перенаправление! Таким образом, оболочка открывает /u001/Scripts/abc.htmlдля записи и очищает его. Затем запускается команда sed, но входной файл пуст, поэтому и выходных данных нет.

Как следует из комментариев, вы должны использовать:

sed -i.bak 's/xyxx/'"$date1"'/' /u001/Scripts/abc.html 

что будет

  • создать файл резервной копии с расширением .bakи перезаписать исходный файл(-i.bak)
  • и используйте значение переменной $date1, потому что оно заключено в двойные кавычки, в отличие от остальной части выражения sed.
1
28.01.2020, 02:41

Теги

Похожие вопросы