在bash中从GitHub url中提取存储库名称

给出任何GitHub存储库url字符串,如:

git://github.com/some-user/my-repo.git

要么

git@github.com:some-user/my-repo.git

要么

https://github.com/some-user/my-repo.git

bash从以下任何字符串中提取存储库名称my-repo的最佳方法是什么?该解决方案必须适用于上面指定的所有类型的URL.

谢谢.

最佳答案
$url=git://github.com/some-user/my-repo.git
$basename=$(basename $url)
$echo $basename
my-repo.git
$filename=${basename%.*}
$echo $filename
my-repo
$extension=${basename##*.}
$echo $extension
git

转载注明原文:在bash中从GitHub url中提取存储库名称 - 代码日志