Выполнить результат предыдущей команды - PullRequest
1 голос
/ 25 октября 2019

Я хочу, чтобы скрипт обновлял мой remote.origin.url с https на git

Я пришел с этим

IN=$(git config --get remote.origin.url)
arrIN=(${IN//@/ })
echo "git@"${arrIN[1]} | bash -s git remote set-url origin 

Кажется, моя строка эха отображается правильно

git@bitbucket.org:bh/app.git

Что я сделал не так?

1 Ответ

1 голос
/ 25 октября 2019

-s говорит bash читать команды из stdin. Не аргументы для команд, которые вы дали в командной строке, а полные команды. Он игнорирует любую команду в командной строке.

$ echo 'echo test command' | bash -s 'echo this command is ignored'
test command

Вам не нужно bash -s. Вы можете просто добавить нужную строку в команду git remote set-url.

git remote set-url origin git@"${arrIN[1]}"
...