mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2024-11-24 14:39:02 +08:00
feat(functions): add takezip
(#12670)
This commit is contained in:
parent
3151c9c1a3
commit
9bcafe1c27
|
@ -57,6 +57,16 @@ function takeurl() {
|
||||||
cd "$thedir"
|
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() {
|
function takegit() {
|
||||||
git clone "$1"
|
git clone "$1"
|
||||||
cd "$(basename ${1%%.git})"
|
cd "$(basename ${1%%.git})"
|
||||||
|
@ -65,6 +75,8 @@ function takegit() {
|
||||||
function take() {
|
function take() {
|
||||||
if [[ $1 =~ ^(https?|ftp).*\.(tar\.(gz|bz2|xz)|tgz)$ ]]; then
|
if [[ $1 =~ ^(https?|ftp).*\.(tar\.(gz|bz2|xz)|tgz)$ ]]; then
|
||||||
takeurl "$1"
|
takeurl "$1"
|
||||||
|
elif [[ $1 =~ ^(https?|ftp).*\.(zip)$ ]]; then
|
||||||
|
takezip "$1"
|
||||||
elif [[ $1 =~ ^([A-Za-z0-9]\+@|https?|git|ssh|ftps?|rsync).*\.git/?$ ]]; then
|
elif [[ $1 =~ ^([A-Za-z0-9]\+@|https?|git|ssh|ftps?|rsync).*\.git/?$ ]]; then
|
||||||
takegit "$1"
|
takegit "$1"
|
||||||
else
|
else
|
||||||
|
|
Loading…
Reference in New Issue
Block a user