별다른 설치과정 없이 쉘 스크립트 커맨드만으로 파일 전송하기
•
과카몰리와 로컬머신사이에 파일전송이 필요할때 사용함
•
많은 방식이 있지만 이 방식은 별다른 설치없이 간단히 사용 가능함
사용법
1.
파일을 전송하고자 하는 컴퓨터에서 아래 명령어를 통해 upload
curl --upload-file {업로드할 파일 경로} https://transfer.sh/{파일명}
•
아래는 a.txt라는 파일을 업로드하는 명령어이다
•
curl --upload-file ./a.txt https://transfer.sh/a.txt
•
transfer.sh뒤에 적는 파일명은 꼭 업로드하는 파일명과 일치할 필요는 없다
•
명령어를 입력하면 다운로드용 url이 출력된다
2.
다운로드 받고자 하는 컴퓨터에서 아래 명령어를 통해 다운로드
curl {다운로드용 url} -o {다운로드할 파일 경로}
•
아래는 업로드한 파일을 다운로드 받는 명령어이다
•
•
-o 뒤에는 본인이 원하는 경로와 파일명을 적으면 되며 업로드할때의 파일명과 달라도 상관 없다
shell function을 구현해서 사용하기
•
.zshrc 또는 .bashrc에 아래 코드를 입력해 trasnfer 함수를 만들기
transfer(){ if [ $# -eq 0 ];then echo "No arguments specified.\nUsage:\n transfer <file|directory>\n ... | transfer <file_name>">&2;return 1;fi;if tty -s;then file="$1";file_name=$(basename "$file");if [ ! -e "$file" ];then echo "$file: No such file or directory">&2;return 1;fi;if [ -d "$file" ];then file_name="$file_name.zip" ,;(cd "$file"&&zip -r -q - .)|curl --progress-bar --upload-file "-" "https://transfer.sh/$file_name"|tee /dev/null,;else cat "$file"|curl --progress-bar --upload-file "-" "https://transfer.sh/$file_name"|tee /dev/null;fi;else file_name=$1;curl --progress-bar --upload-file "-" "https://transfer.sh/$file_name"|tee /dev/null;fi;}
Shell
복사
•
transfer 명령어 한 줄로 업로드를 간편하게 할 수 있게 됨
그 외 활용법
•
여러개의 파일 업로드, 멀웨어 스캔, 암호화 전송, 이메일 전송등 다양한 전송 옵션이 있다
•