diff options
Diffstat (limited to 'bin/misc/transfer')
-rwxr-xr-x | bin/misc/transfer | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/bin/misc/transfer b/bin/misc/transfer new file mode 100755 index 0000000..1fc2117 --- /dev/null +++ b/bin/misc/transfer | |||
@@ -0,0 +1,22 @@ | |||
1 | #! /bin/env sh | ||
2 | |||
3 | if [ $# -eq 0 ];then | ||
4 | echo "No arguments specified.\nUsage:\n transfer <file|directory>\n ... | transfer <file_name>">&2; | ||
5 | return 1; | ||
6 | fi; | ||
7 | if tty -s; then | ||
8 | file="$1"; file_name=$(basename "$file"); | ||
9 | if [ ! -e "$file" ]; then | ||
10 | echo "$file: No such file or directory">&2; | ||
11 | return 1; | ||
12 | fi; | ||
13 | if [ -d "$file" ];then | ||
14 | file_name="$file_name.zip" ,; | ||
15 | (cd "$file" && zip -r -q - .) | curl -w '\n' --progress-bar --upload-file "-" "https://topo.tw/up/$file_name" | tee /dev/null; | ||
16 | else | ||
17 | cat "$file" | curl -w '\n' --progress-bar --upload-file "-" "https://topo.tw/up/$file_name" | tee /dev/null; | ||
18 | fi; | ||
19 | else | ||
20 | file_name=$1; | ||
21 | curl -w '\n' --progress-bar --upload-file "-" "https://topo.tw/up/$file_name" | tee /dev/null; | ||
22 | fi; | ||