Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
adam.huang
Ohmyzsh
Commits
845fdfaa
Commit
845fdfaa
authored
Feb 09, 2017
by
Ilyes Kechidi
Browse files
replaced transfer function with @nl5887 version
parent
8013d3d8
Changes
1
Hide whitespace changes
Inline
Side-by-side
plugins/transfer/transfer.plugin.zsh
View file @
845fdfaa
...
...
@@ -2,6 +2,64 @@
# transfer Plugin
# Usage Example :
# > transfer file.txt
# > transfer directory/
transfer
()
{
if
[
$#
-eq
0
]
;
then
echo
"No arguments specified. Usage:
\n
echo transfer /tmp/test.md
\n
cat /tmp/test.md | transfer test.md"
;
return
1
;
fi
tmpfile
=
$(
mktemp
-t
transferXXX
)
;
if
tty
-s
;
then
basefile
=
$(
basename
"
$1
"
|
sed
-e
's/[^a-zA-Z0-9._-]/-/g'
)
;
curl
--progress-bar
--upload-file
"
$1
"
"https://transfer.sh/
$basefile
"
>>
$tmpfile
;
else
curl
--progress-bar
--upload-file
"-"
"https://transfer.sh/
$1
"
>>
$tmpfile
;
fi
;
cat
$tmpfile
;
rm
-f
$tmpfile
;
}
\ No newline at end of file
# Author:
# Remco Verhoef <remco@dutchcoders.io>
# https://gist.github.com/nl5887/a511f172d3fb3cd0e42d
#
curl
--version
2>&1
>
/dev/null
if
[
$?
-ne
0
]
;
then
echo
"Could not find curl."
return
1
fi
transfer
()
{
# check arguments
if
[
$#
-eq
0
]
;
then
echo
"No arguments specified. Usage:
\n
echo transfer /tmp/test.md
\n
cat /tmp/test.md | transfer test.md"
return
1
fi
# get temporarily filename, output is written to this file show progress can be showed
tmpfile
=
$(
mktemp
-t
transferXXX
)
# upload stdin or file
file
=
$1
if
tty
-s
;
then
basefile
=
$(
basename
"
$file
"
|
sed
-e
's/[^a-zA-Z0-9._-]/-/g'
)
if
[
!
-e
$file
]
;
then
echo
"File
$file
doesn't exists."
return
1
fi
if
[
-d
$file
]
;
then
# zip directory and transfer
zipfile
=
$(
mktemp
-t
transferXXX.zip
)
cd
$(
dirname
$file
)
&&
zip
-r
-q
-
$(
basename
$file
)
>>
$zipfile
curl
--progress-bar
--upload-file
"
$zipfile
"
"https://transfer.sh/
$basefile
.zip"
>>
$tmpfile
rm
-f
$zipfile
else
# transfer file
curl
--progress-bar
--upload-file
"
$file
"
"https://transfer.sh/
$basefile
"
>>
$tmpfile
fi
else
# transfer pipe
curl
--progress-bar
--upload-file
"-"
"https://transfer.sh/
$file
"
>>
$tmpfile
fi
# cat output link
cat
$tmpfile
# cleanup
rm
-f
$tmpfile
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment