1
0
mirror of https://github.com/ohmyzsh/ohmyzsh.git synced 2024-11-24 12:10:58 +08:00

feat(functions): add takezip (#12670)

This commit is contained in:
Erik Teichmann 2024-09-18 11:26:38 -07:00 committed by GitHub
parent 3151c9c1a3
commit 9bcafe1c27
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -57,6 +57,16 @@ function takeurl() {
cd "$thedir"
}
function takezip() {
local data thedir
data="$(mktemp)"
curl -L "$1" > "$data"
unzip "$data" -d "./"
thedir="$(unzip -l "$data" | awk 'NR==4 {print $4}' | sed 's/\/.*//')"
rm "$data"
cd "$thedir"
}
function takegit() {
git clone "$1"
cd "$(basename ${1%%.git})"
@ -65,6 +75,8 @@ function takegit() {
function take() {
if [[ $1 =~ ^(https?|ftp).*\.(tar\.(gz|bz2|xz)|tgz)$ ]]; then
takeurl "$1"
elif [[ $1 =~ ^(https?|ftp).*\.(zip)$ ]]; then
takezip "$1"
elif [[ $1 =~ ^([A-Za-z0-9]\+@|https?|git|ssh|ftps?|rsync).*\.git/?$ ]]; then
takegit "$1"
else