저는 첫 번째 bash 스크립트를 작성하고 있습니다. GitHub에 모든 저장소를 설치하고 있습니다.
warpInLocations=("[email protected]:acc/toolkit.git" "[email protected]:acc/sms.git" "[email protected]:acc/boogle.git" "[email protected]:acc/cairo.git")
제가 설치했을 때의 모습입니다.
echo "warping in toolkit, sms, boogle and cairo"
for repo in "${warpInLocations[@]}"
do
warpInDir=$(echo ${warpToLocation}${repo} | cut -d'.' -f1)
if [ -d "$warpToLocation"]; then
echo "somethings in the way.. $warpInDir all ready exists"
else
git clone $repo $warpInDir
fi
done
여기 이 줄은 Twist 위치의 전후에 orso toolkit
라는 폴더를 제공하고 싶지만 선택 중입니다. 아마도 이것이 이후이기 때문일 것입니다.sms
/
.
git@github
.
저장소에서 이름을 선택하도록 하려면 어떻게 해야 합니까?
답변1
답변2
이 작업은 두 단계로 수행해야 합니다.
[email protected]:acc/toolkit.git
dir=${dir#*/} # Remove everything up to /
dir=${dir%.*} # Remove everything from the .
답변3
Bash에서는 정규식을 사용하고 대괄호를 캡처할 수도 있습니다.
for repo in "${warpInLocations[@]}"; do
[[ $repo =~ /([^.]+)\. ]] && dir=${BASH_REMATCH[1]}
warpInDir=${warpToLocation}$dir
# ...