Откройте трубопроводный URL в Google Chrome в Bash (OSX) - PullRequest
1 голос
/ 25 марта 2020

Я пытаюсь передать значение (исходный URL Git, которым манипулирует sed) через канал в Chrome в bash в OSX. Я пробовал следующее:

Я могу заставить две отдельные части работать, но когда я их соединяю, Chrome не открывает URL, как я ожидал.

Однако, если я придерживаюсь эти два вместе, Chrome открывается, но только на пустую страницу (about:blank):

  • git config --get remote.origin.url | sed "s/git@/https:\/\//g" | xargs /usr/bin/open -a "/Applications/Google Chrome.app"
  • или
  • git config --get remote.origin.url | sed "s/git@/https:\/\//g" | /usr/bin/open -a "/Applications/Google Chrome.app"

1 Ответ

1 голос
/ 26 марта 2020

На моей машине я обнаружил, что мне нужно сделать

git config --get remote.origin.url | sed 's/\.git//; s/git@/www\./; s#https://#www\.#; s#\.com:#\.com/#'

Чтобы получить вывод

www.github.com/myProject/

Это формат URL, который chrome, похоже, нравится.

  1. Я добавил 's/\.git//;, чтобы избавиться от .git в конце URL
  2. Я добавил s/git@/www\./; s#https://#www\.#; для обмена git@ (Для s sh клонированные репозитории) и https:// (для клонированных репозиториев, отличных от s sh) с www.
  3. Я добавил s#\.com:#\.com/#, чтобы избавиться от двоеточия ':'

А вот и весь Шебанг

git config --get remote.origin.url | sed 's/\.git//; s/git@/www\./; s#https://#www\.#; s#\.com:#\.com/#' | xargs /usr/bin/open -a "/Applications/Google Chrome.app"
...