Привет Я пытаюсь использовать Sed в скрипте Bash, и у меня возникла проблема. (Я новичок в них обоих)Вставка переменной после шаблона с помощью sed
Я пытаюсь вставить $log
после флага <!-- Beginning git log -->
.
#!/bin/bash
log=`git log -1 --stat --date=short --pretty=format:'[ %cd | %an | %s ]'`
sed "/<!-- Beginning git log -->/a $log" ~/opt/prime.dropbox/commit.md
Так в commit.md я бы:
some text
<!-- Beginning git log -->
git log output
some text
Я перепробовал все возможные одиночные/двойные кавычки трюки, .. или, может быть, только все неправильные.
Это ошибка, которую я получаю большую часть времени.
sed: -e expression #1, char 102: unknown command: `f'
Я знаю, что с awk должен быть более простой способ, но я так близко. ^^
Возможно, есть Html-символы <!-- -->
блокирование или что-то в этом роде?
Thx
Возможно, выход 'git log' содержит символы, специальные для sed. Каково значение '$ log'? –
[2013-08-20 | sergio | git log без -p] index.html | 2 + - 1 файл изменен, 1 вставка (+), 1 удаление (-) Да, похоже. Но я не хочу, чтобы sed интерпретировал это. –