genfile is a CLI for uploading, downloading, listing, and deleting files on the GenFile service.
Overview
Commands:
upuploads one or more files (supports glob patterns).downdownloads files by name or pattern.dirlists remote files (short or long format).deldeletes remote files by pattern.
All commands prompt for your password. If your account requires TOTP, you will also be prompted for a 6-digit code.
Usage
genfile up <user> <path> [-o|--overwrite] [-v|--verbose] [-t|--to <user>]
genfile down <user> <name> [-o|--overwrite] [-v|--verbose] [--stdout]
genfile dir <user> [pattern] [-l|--long] [-v|--verbose]
genfile del <user> <pattern> [-v|--verbose]
Common Flags
-v,--verbose— Show extra output (including server response or checksums).-o,--overwrite— Overwrite existing files where applicable.
Command Details
Upload (up)
Upload a file or multiple files matching a glob pattern. You can also pipe data via stdin by using - as the path.
Flags:
-t,--to <user>— Upload to another owner (defaults to the authenticated user).-o,--overwrite— Replace an existing remote file of the same name.-v,--verbose— Print server response and local SHA256 when available.
Examples:
genfile up user@domain.com report.pdf
genfile up user@domain.com "ticket_*"
genfile up user@domain.com -t shared@domain.com myfile.txt
ls -la | genfile up user@domain.com directory.txt
echo "hello" | genfile up user@domain.com -
Download (down)
Download a single file or multiple files matching a pattern. When the pattern includes wildcards, genfile first resolves matches and then downloads each file.
Flags:
-o,--overwrite— Replace an existing local file.--stdout— Force output to stdout (useful for pipelines).-v,--verbose— Print SHA256 for downloaded files.
Examples:
genfile down user@domain.com myfile.txt
genfile down user@domain.com "ticket_*"
genfile down user@domain.com myfile.txt | grep -i test
genfile down user@domain.com myfile.txt --stdout > myfile.txt
Directory Listing (dir)
List remote files. Use -l for a table with metadata (name, updated, size, mime, sha256).
Flags:
-l,--long— Long listing with metadata.-v,--verbose— Output raw server response.
Examples:
genfile dir user@domain.com
genfile dir user@domain.com "test*" -l
Delete (del)
Delete remote files matching a pattern.
Flags:
-v,--verbose— Output raw server response.
Examples:
genfile del user@domain.com "old_*"
Notes
- Maximum upload size is 250 MB per file.
genfile upsupports glob patterns and skips directories.- When downloading to files,
genfilerefuses to overwrite unless-ois provided. - If stdout is piped, downloads are automatically sent to stdout.