https://github.com/tsub/s3-edit
Edit directly a file on Amazon S3 in CLI
https://github.com/tsub/s3-edit
aws aws-s3 cli go golang s3
Last synced: 5 months ago
JSON representation
Edit directly a file on Amazon S3 in CLI
- Host: GitHub
- URL: https://github.com/tsub/s3-edit
- Owner: tsub
- License: mit
- Created: 2017-08-23T13:37:46.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2022-08-19T07:26:49.000Z (almost 4 years ago)
- Last Synced: 2024-11-25T00:33:06.169Z (over 1 year ago)
- Topics: aws, aws-s3, cli, go, golang, s3
- Language: Go
- Homepage:
- Size: 72.3 KB
- Stars: 81
- Watchers: 6
- Forks: 13
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# s3-edit
Edit directly a file on Amazon S3 in CLI.
[](https://github.com/tsub/s3-edit/releases)
[](https://circleci.com/gh/tsub/s3-edit/tree/master)
[](https://godoc.org/github.com/tsub/s3-edit)
[](https://github.com/tsub/s3-edit/blob/master/LICENSE)
## Installation
### Use go get
```
$ go get -u github.com/tsub/s3-edit
```
### Install with Homebrew
For macOS and Linux
```
$ brew install tsub/s3-edit/s3-edit
```
### Get binary from GitHub releases
Download latest binary from https://github.com/tsub/s3-edit/releases
## Requirements
* AWS credentials
* Upload files to S3 in advance
For examples, use aws-cli
```
$ aws configure --profile myaccount
$ export AWS_PROFILE=myaccount
```
Other methods,
```
$ export AWS_ACCESS_KEY_ID=xxxx
$ export AWS_SECRET_ACCESS_KEY=xxxx
$ export AWS_REGION=ap-northeast-1
```
## Usage
Upload the file to S3 in advance.
```
$ echo "This is a test file." > myfile.txt
$ aws s3 cp test.txt s3://mybucket/myfile.txt
```
To directly edit a file on S3, use `edit` subcommand.
```
$ s3-edit edit s3://mybucket/myfile.txt
```
Then, open a file with the default editor specified by `$EDITOR`.
[](https://gyazo.com/96c9225da700f91e7b44c04f439fdd23)
When you close the editor after edit, a file is automatically re-uploaded to S3.
```
$ aws s3 cp s3://mybucket/myfile.txt -
This is a test file.
Edited with s3-edit.
```
## Development
### Requirements
* Golang >= 1.17