Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/aarnt/gorgzorg

A simple multiplatform CLI network file transfer tool
https://github.com/aarnt/gorgzorg

bsd cli command-line command-line-tool linux multiplatform network-programming qt5 qt6 socket-programming transfer-files windows

Last synced: 9 days ago
JSON representation

A simple multiplatform CLI network file transfer tool

Awesome Lists containing this project

README

        

## GorgZorg is a simple multiplatform CLI network file transfer tool

Do you need to copy files or folders between Windows/Linux/BSD machines but don't want to create shares/memorize complex syntax?

So, this is the tool you've been looking for.

### How do you install GorgZorg

If you own a 64 bit Windows or a 64 bit Linux computer, you can download latest binaries from [here](https://github.com/aarnt/gorgzorg/releases/latest).
Otherwise, keep reading, as you'll have to compile the source code.

### What you need to compile GorgZorg

* QMake or CMake
* Qt6/Qt5 toolkit

### How to compile GorgZorg using QMake
```
$git clone https://github.com/aarnt/gorgzorg
$cd gorgzorg
$qmake-qt6 (or qmake-qt5 or qmake)
$make
$copy generated gorgzorg binary to your /usr/bin (Linux), /usr/local/bin (BSD) or any other path (Windows)
```

### How to compile GorgZorg using CMake

```
$git clone https://github.com/aarnt/gorgzorg
$cd gorgzorg
$cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr
$make
```

### How to use GorgZorg

-c : Set GorgZorg server IP to connect to
-d : Set directory in which received files are saved
-g : Set a filename or path to gorg (send)
-h: Show this help
-p : Set port to connect or listen to connections (default is 10000)
-q: Quit zorging after transfer is complete
-tar: Use tar to archive contents of path
-v: Verbose mode. When gorging, show speed. When zorging, show bytes received
--version: Show version information
-y: When zorging, automatically accept any incoming file/path
-z [IP]: Enter Zorg mode (listen to connections). If IP is ommited, GorgZorg will guess it
-zip: Use gzip to compress contents of path

### Examples

```
#Send file /home/user/Projects/gorgzorg/LICENSE to IP 10.0.1.60 on port 45400
gorgzorg -c 10.0.1.60 -g /home/user/Projects/gorgzorg/LICENSE -p 45400

#Send contents of Test directory to IP 192.168.1.1 on (default) port 10000
gorgzorg -c 192.168.1.1 -g Test

#Send archived contents of Crucial directory to IP 172.16.20.21
gorgzorg -c 172.16.20.21 -g Crucial -tar

#Send contents of filter expression in a gziped tarball to IP 192.168.0.100 [1]
gorgzorg -c 192.168.0.100 -g '/home/user/Documents/*.txt' -zip

#Start a GorgZorg server on address 192.168.10.16:20000 using directory
#"/home/user/gorgzorg_files" to save received files
gorgzorg -p 20000 -z 192.168.10.16 -d ~/gorgzorg_files

#Start a GorgZorg server on address 172.16.11.43 on (default) port 10000
#Always accept transfers and quit just after receiving one
gorgzorg -z 172.16.11.43 -y -q

[1] On Windows systems, you'll need 7zip installed.
```