Файл поиска Bash для шаблона, замените шаблон на код, содержащий имя ветви Git

У меня есть файл README.md, где я хотел бы заменить текстовый идентификатор{{CODESHIP_CODE}} со строкой кода - в частности, фрагмент кода изображения состояния сборки, который включает имя ветви git.

Я думаю, это будет выглядеть примерно так ...

Поместите текущую веткуgit rev-parse --abbrev-ref HEAD в переменной bashПоместите шаблон / строку для поиска в переменную. Этот шаблон / строка просто используется в качестве идентификатора, чтобы быстро найти место, где в файле README.md я хочу вывести свой код изображения состояния сборки.использованиеsed (возможно,grep) выполнить поиск в файле README.md указанного{{CODESHIP_CODE}} pattern / string и замените его кодом состояния образа сборки

Код, который я написал, выглядит следующим образом:

#!/bin/bash

# Get the current branch
function git_branch {
    git rev-parse --abbrev-ref HEAD
}

# Set variable to current branch
branch=$(git_branch)

# Define the pattern to search for
# This pattern/string gets replaced with the build status image code
id="{{CODESHIP_CODE}}"

# Create build status image code
# Inject the $branch variable into the correct location
codeship_build_status="[ ![Codeship Status for ExampleGitHubUser/ExampleRepo](https://codeship.com/projects/a99d9999-9b9f-9999-99aa-999a9a9a9999/status?branch=$branch)](https://codeship.com/projects/999999)"

# Find the pattern to replace
# Then replace it with the build status image
sed -i -e "s/{{CODESHIP_CODE}}/$codeship_build_status/g" README.md

Проблема в том, что я продолжаю получать следующую ошибку:

sed: 1: "s/{{CODESHIP_CODE}}/[ ! ...": bad flag in substitute command: 'a'

Я не уверен, как решить эту проблему, чтобы скрипт работал правильно. Любая помощь будет принята с благодарностью.

Ответы на вопрос(1)

Ваш ответ на вопрос