feat(commands): more commands (#30)

- I wrote a scripts to copy and generate all commands missing in iris
from fig repo: https://github.com/withfig/autocomplete
- Add a new script to generate commands docs about which commands
currently are inside commands folder
377d4aac663590e504fe39a92eb4dac4cbd333b2
- Add more icons e64d4e70a1db61e62053460a882e093bd6373ab1
This commit is contained in:
VERSE
2026-07-04 22:08:36 +07:00
committed by GitHub
parent ffa336196a
commit 2ef3c90819
482 changed files with 22971 additions and 5 deletions
+106
View File
@@ -0,0 +1,106 @@
package fs
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "rclone",
Description: "Only list directories",
Subcommands: []core.Subcommand{
{Name: "about", Description: "Get quota information from the remote"},
{Name: "authorize", Description: "Remote authorization"},
{Name: "backend", Description: "Run a backend specific command"},
{Name: "cat", Description: "Concatenates any files and sends them to stdout"},
{Name: "check", Description: "Checks the files in the source and destination match"},
{Name: "cleanup", Description: "Clean up the remote if possible"},
{Name: "config", Description: "Enter an interactive configuration session"},
{Name: "create", Description: "Create a new remote with name, type and options"},
{Name: "copy", Description: "Copy files from source to dest, skipping already copied"},
{Name: "copyto", Description: "Copy files from source to dest, skipping already copied"},
{Name: "copyurl", Description: "Copy url content to dest"},
{Name: "cryptcheck", Description: "Cryptcheck checks the integrity of a crypted remote"},
{Name: "cryptdecode", Description: "Cryptdecode returns unencrypted file names"},
{Name: "dedupe", Description: "Interactively find duplicate filenames and delete/rename them"},
{Name: "interactive", Description: "Interactive"},
{Name: "skip", Description: "Removes identical files then skips anything left"},
{Name: "rename", Description: "Removes identical files then renames the rest to be different"},
{Name: "list", Description: "Lists duplicate dirs and files only and changes nothing"},
{Name: "delete", Description: "Remove the files in path"},
{Name: "genautocomplete", Description: "Output completion script for a given shell"},
{Name: "gendocs", Description: "Output markdown docs for rclone to the directory supplied"},
{Name: "hashsum", Description: "Produces a hashsum file for all the objects in the path"},
{Name: "help", Description: "Show help for rclone commands, flags and backends"},
{Name: "flags", Description: "List of global flags"},
{Name: "link", Description: "Generate public link to file/folder"},
{Name: "listremotes", Description: "List all the remotes in the config file"},
{Name: "ls", Description: "List the objects in the path with size and path"},
{Name: "lsd", Description: "List all directories/containers/buckets in the path"},
{Name: "lsf", Description: "List directories and objects in remote:path formatted for parsing"},
{Name: "lsjson", Description: "List directories and objects in the path in JSON format"},
{Name: "lsl", Description: "List the objects in path with modification time, size and path"},
{Name: "md5sum", Description: "Produces an md5sum file for all the objects in the path"},
{Name: "mkdir", Description: "Make the path if it doesn't already exist"},
{Name: "mount", Description: "Mount the remote as file system on a mountpoint"},
{Name: "move", Description: "Move files from source to dest"},
{Name: "moveto", Description: "Move file or directory from source to dest"},
{Name: "ncdu", Description: "Explore a remote with a text based user interface"},
{Name: "obscure", Description: "Obscure password for use in the rclone config file"},
{Name: "purge", Description: "Remove the path and all of its contents"},
{Name: "rc", Description: "Run a command against a running rclone"},
{Name: "rcat", Description: "Copies standard input to file on remote"},
{Name: "rcd", Description: "Run rclone listening to remote control commands only"},
{Name: "rmdir", Description: "Remove the empty directory at path"},
{Name: "rmdirs", Description: "Remove empty directories under the path"},
{Name: "selfupdate", Description: "Update the rclone binary"},
{Name: "serve", Description: "Serve a remote over a protocol"},
{Name: "settier", Description: "Changes storage class/tier of objects in remote"},
{Name: "sha1sum", Description: "Produces an sha1sum file for all the objects in the path"},
{Name: "size", Description: "Prints the total size and number of objects in remote:path"},
{Name: "sync", Description: "Make source and dest identical, modifying destination only"},
},
Options: []core.Option{
{Name: "--dirs-only", Description: "Only list directories"},
{Name: "--files-only", Description: "Only list files"},
{Name: "--recursive", Description: "Recurse into the listing"},
{Name: "--combined", Description: "Make a combined report of changes to this file"},
{Name: "--differ", Description: "Report all non-matching files to this file"},
{Name: "--error", Description: "Report all files with errors (hashing or reading) to this file"},
{Name: "--match", Description: "Report all matching files to this file"},
{Name: "--missing-on-dst", Description: "Report all files missing from the destination to this file"},
{Name: "--missing-on-src", Description: "Report all files missing from the source to this file"},
{Name: "--one-way", Description: "Check one way only, source files must exist on remote"},
{Name: "--full", Description: "Full numbers instead of SI units"},
{Name: "--json", Description: "Format output as JSON"},
{Name: "--auth-no-open-browser", Description: "Do not automatically open auth link in default browser"},
{Name: "--discard", Description: "Discard the output instead of printing"},
{Name: "--count", Description: "Only print N characters. (default -1)"},
{Name: "--head", Description: "Only print the first N characters"},
{Name: "--offset", Description: "Start printing at offset N (or from end if -ve)"},
{Name: "--tail", Description: "Only print the last N characters"},
{Name: "--download", Description: "Check by downloading rather than with hash"},
{Name: "--reverse", Description: "Reverse cryptdecode, encrypts filenames"},
{Name: "--by-hash", Description: "Find identical hashes rather than names"},
{Name: "--dedupe-mode", Description: "Dedupe mode"},
{Name: "--rmdirs", Description: "Rmdirs removes empty directories but leaves root intact"},
{Name: "--base64", Description: "Output base64 encoded hashsum"},
{Name: "--expire", Description: "The amount of time that the link will be valid (default 100y)"},
{Name: "--unlink", Description: "Remove existing public link to file/folder"},
{Name: "--long", Description: "Show the type as well as names"},
{Name: "-R", Description: "List directories and objects in remote:path formatted for parsing"},
{Name: "--absolute", Description: "Put a leading / in front of path names"},
{Name: "--csv", Description: "Output in CSV format"},
{Name: "-d", Description: "Append a slash to directory names. (default true)"},
{Name: "--format", Description: "List directories and objects in the path in JSON format"},
{Name: "--encrypted", Description: "Show the encrypted names"},
{Name: "--hash", Description: "Include hashes in the output (may take longer)"},
{Name: "--hash-type", Description: "Show only this hash type (may be repeated)"},
{Name: "--no-mimetype", Description: "Don't read the mime type (can speed things up)"},
{Name: "--no-modtime", Description: "Don't read the modification time (can speed things up)"},
{Name: "--original", Description: "Show the ID of the underlying Object"},
{Name: "--version", Description: "View your current rclone version"},
{Name: "--help", Description: "Show help for rclone commands, flags and backends"},
},
})
}