{"id":15395624,"url":"https://github.com/picosonic/raft","last_synced_at":"2025-04-16T00:11:28.636Z","repository":{"id":136313593,"uuid":"84969693","full_name":"picosonic/raft","owner":"picosonic","description":"Remote Access and File Transfer","archived":false,"fork":false,"pushed_at":"2022-03-14T16:44:16.000Z","size":10,"stargazers_count":6,"open_issues_count":0,"forks_count":6,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-04-16T00:11:24.273Z","etag":null,"topics":["file-transfer","remote-access","remote-admin-tool","remote-execution","remote-script","remote-transfer","scripting"],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/picosonic.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-03-14T16:06:59.000Z","updated_at":"2024-08-12T19:28:23.000Z","dependencies_parsed_at":null,"dependency_job_id":"cd5931f6-5250-440e-865e-64242cf3b1ac","html_url":"https://github.com/picosonic/raft","commit_stats":{"total_commits":10,"total_committers":3,"mean_commits":"3.3333333333333335","dds":0.5,"last_synced_commit":"3da6fa105900141f33847b2099b5c82a7d017451"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/picosonic%2Fraft","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/picosonic%2Fraft/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/picosonic%2Fraft/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/picosonic%2Fraft/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/picosonic","download_url":"https://codeload.github.com/picosonic/raft/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249173086,"owners_count":21224483,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["file-transfer","remote-access","remote-admin-tool","remote-execution","remote-script","remote-transfer","scripting"],"created_at":"2024-10-01T15:28:59.359Z","updated_at":"2025-04-16T00:11:28.606Z","avatar_url":"https://github.com/picosonic.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# raft\nraft - Remote Administration File Transfer\n\nraft is intended for scripting or command line remote administration and file transfers.\n\nYou can specify either a remote command to run, a file transfer to take place (only local to remote), or a local to remote transfer followed by a command. So for instance you can transfer a script file to a remote host, run that script and collect any output.\n\nWhen local files are transferred to a remote host, raft will attempt to preserve the permissions, owner and timestamps.\n\nTo get around issues with escaping command lines related to quotes and characters which get interpretted incorrectly, you can base64 encode the command line and use the `-c64` option instead of `-c`.\n\nFor example, the `ls -l` command can be bas64 encoded with : `echo -n \"ls -l\" | base64`, which results in `bHMgLWw=` which becomes the parameter for the `-c64` option.\n\n## Syntax :\n\n`raft [-h [username@]remotehost] [-i identityfile] [-p password] [-c \"shell command\"] [-c64 \"base64 encoded shell command\"] [-l localfilename] [-r remotefilename] [-z] [-v]`\n\n## Where :\n\n * `-h` Remote hostname with optional username, if not specified currently logged in username is used\n * `-i` Specify the use of an identity file (e.g. id_rsa)\n * `-p` Optional password to use, or passphrase for identity file if used\n * `-c` Execute a command on the remote host, the response is returned\n * `-c64` Execute a base64 encoded command on the remote host, the response is returned\n * `-l` Local filename to transfer to remote host\n * `-r` Remote filename to use when transferring a local file\n * `-z` Use compression (level 9)\n * `-v` Verbose\n\n## Return codes :\n\n * `0` - Success\n * `1` - Error creating SSH session\n * `2` - Error connecting to remote host\n * `3` - Error importing identity file\n * `4` - Error authenticating with password\n * `5` - Error file transfer failed\n \n## Requirements :\n \n * OpenSSL libraries\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpicosonic%2Fraft","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpicosonic%2Fraft","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpicosonic%2Fraft/lists"}