GNU/Linux >> Tutoriales Linux >  >> Linux

Comparta archivos a través de Internet desde la línea de comandos usando Transfer.sh

Hay muchas utilidades para compartir archivos en la web. Algunos de ellos están basados ​​en CLI y otros están basados ​​en GUI. Cuando se trata de compartir o transferir archivos grandes desde la línea de comandos a través de Internet, solo hay unos pocos. Uno de ellos es Transfer.sh . No, no es un script, es un sitio web. El sitio Transfer.sh le permite compartir archivos a través de Internet desde la línea de comandos en Linux, fácil y rápidamente. No necesita instalar nada excepto cURL o wget . Estas utilidades están preinstaladas en la mayoría de las distribuciones de Linux.

Transfer.sh te permite subir archivos de hasta 10 GB en una ida. Todos los archivos compartidos caducan automáticamente después de 14 días , por lo que no debe preocuparse por eliminarlos manualmente. Podemos cargar archivos individuales o grupales de una sola vez. Todos los archivos se pueden cifrar antes de cargarlos. Podemos escanear los archivos cargados en busca de malware o virus con ClamAV o VirusTotal. Y, por supuesto, es completamente GRATIS. Para obtener más detalles, consulte el enlace de la página de inicio del proyecto adjunto al final de esta guía.

Comparta archivos a través de Internet desde la línea de comandos usando transfer.sh en Linux

Compartir o transferir archivos usando transfer.sh no es gran cosa. Primero subamos los archivos.

Subir archivos usando Transfer.sh

Todo lo que tiene que hacer es ejecutar el siguiente comando para compartir los archivos:

$ curl --upload-file Amazon_s3_tutorial.pdf https://transfer.sh/Amazon_s3_tutorial.pdf

Aquí, Amazon_s3_tutorial.pdf es el archivo en mi carpeta de inicio.

Salida de muestra:

https://transfer.sh/S9ewb/Amazon_s3_tutorial.pdf

Cuando se completa la carga, el servicio devuelve el enlace de descarga único del archivo. Puede pasar esta URL a cualquier persona que desee descargar y utilizar este archivo.

También es posible cargar archivos usando 'wget'.

$ wget --method PUT --body-file=/home/sk/file.pdf https://transfer.sh/file.pdf -O - -nv

Transfer.sh nos permite subir varios archivos a la vez.

Para cargar varios archivos a la vez, ejecute:

$ curl -i -F [email protected]/home/sk/Downloads/bash_tips.pdf -F [email protected]/home/sk/Downloads/Docker.pdf https://transfer.sh/

Salida de muestra:

HTTP/1.1 100 Continue

HTTP/1.1 200 OK
Date: Sat, 08 Apr 2017 10:10:01 GMT
Content-Type: text/plain
Content-Length: 75
Connection: keep-alive
Server: Transfer.sh HTTP Server 1.0
X-Made-With: <3 by DutchCoders
X-Served-By: Proudly served by DutchCoders

https://transfer.sh/E7MLa/bash_tips.pdfhttps://transfer.sh/E7MLa/Docker.pdf

Una vez que se complete la carga, Transfer.sh le dará enlaces de descarga únicos para cada archivo.

Descargar archivos

Para descargar el archivo, simplemente ejecute:

$ curl https://transfer.sh/S9ewb/Amazon_s3_tutorial.pdf -o Amazon_s3_tutorial.pdf

Salida de muestra:

% Total % Received % Xferd Average Speed Time Time Time Current
 Dload Upload Total Spent Left Speed
100 693k 100 693k 0 0 171k 0 0:00:04 0:00:04 --:--:-- 171k

Alternativamente, puede obtener una vista previa y descargarlo desde su navegador web. Simplemente coloque el enlace de descarga en la barra de direcciones de su navegador web y haga clic en descargar botón para descargar el archivo compartido.

Descargar archivos a través del sitio web transfer.sh

Cifrar y cargar archivos

Transfer.sh le permite cifrar y cargar los archivos.

Para cifrar y cargar un archivo, ejecute:

$ cat /home/sk/file.txt|gpg -ac -o-|curl -X PUT --upload-file "-" https://transfer.sh/file.txt

Se le pedirá que ingrese una frase de contraseña dos veces. Luego, transfer.sh le dará el enlace de descarga del archivo encriptado.

https://transfer.sh/140GMQ/file.txt

Descifrar y descargar archivos

Para descifrar y descargar el archivo cifrado anterior, ejecute:

$ curl https://transfer.sh/140GMQ/file.txt|gpg -o- > /home/sk/ostechnix.txt

Salida de muestra:

% Total % Received % Xferd Average Speed Time Time Time Current
 Dload Upload Total Spent Left Speed
 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0gpg: WARNING: no command supplied. Trying to guess what you mean ...
100 220 100 220 0 0 113 0 0:00:01 0:00:01 --:--:-- 113
gpg: AES encrypted data
gpg: encrypted with 1 passphrase

Añadir alias

Si planea usar este servicio con frecuencia, puede agregar un alias a .bashrc o .zshrc archivos para hacer este comando aún más fácil.

Si usa el shell BASH, edite ~/.bashrc archivo:

$ sudo vi ~/.bashrc

Agregue las siguientes líneas al final.

transfer() { if [ $# -eq 0 ]; then echo -e "No arguments specified. Usage:\necho transfer /tmp/test.md\ncat /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; }

Guarde y cierre el archivo. Luego, ejecute el siguiente comando para aplicar los cambios guardados.

$ source ~/.bashrc

Ahora, puede cargar y descargar archivos como se muestra a continuación.

$ transfer file.txt

Salida de muestra:

################################################################## 100.0%
https://transfer.sh/yjRW9/file.txt

Lectura relacionada:

  • Transferir archivos y carpetas entre computadoras con Croc
  • Compartir archivos entre escritorios Linux con Warpinator
  • Cómo compartir archivos de forma segura a través de Internet con Firefox Send
  • Cómo compartir archivos de forma segura desde la línea de comandos con ffsend en Linux
  • PSiTransfer:una solución sencilla de código abierto y alojamiento propio para compartir archivos
  • OnionShare:comparte archivos de cualquier tamaño de forma segura y anónima

Conclusión

Para ser honesto, no he oído ni usado este tipo de herramienta para compartir archivos antes. Por lo que he probado esta herramienta, es realmente fácil y muy rápida. Y sí, algunos de los servicios web populares como Google Drive, One Drive también le permiten compartir y transferir archivos a través de Internet. Pero tienen algunas limitaciones. Necesita tener una cuenta registrada para usar esos servicios. Pero, transfer.sh no necesita ninguna cuenta registrada. Más importante aún, no necesita salir de su Terminal y no necesita instalar ninguna aplicación adicional para compartir los archivos.

Si conoce alguna herramienta similar para compartir archivos de línea de comandos, hágamelo saber en la sección de comentarios a continuación. ¡Soy todo oídos!


Linux
  1. Uso de Google Drive desde la línea de comandos de Linux

  2. ¿Cómo obtener un recuento de archivos en un directorio usando la línea de comando?

  3. Crear archivos usando la línea de comando en Linux

  4. Migración de un servidor Linux desde la línea de comandos

  5. Cómo transferir archivos de forma segura usando el comando SCP en Linux

Uso de less para ver archivos de texto en la línea de comandos de Linux

Cómo extraer o descomprimir archivos tar.gz desde la línea de comandos de Linux

Cómo eliminar archivos y directorios usando la línea de comandos de Linux

Cómo probar la velocidad de Internet usando la línea de comandos en Linux

Cómo quitar líneas de un archivo usando el comando Sed

Transferir archivos usando WinSCP