{"id":13509609,"url":"https://github.com/minio/mc","last_synced_at":"2025-05-12T05:12:53.822Z","repository":{"id":25889423,"uuid":"29329884","full_name":"minio/mc","owner":"minio","description":"Unix like utilities for object store","archived":false,"fork":false,"pushed_at":"2025-05-06T16:41:34.000Z","size":21029,"stargazers_count":3030,"open_issues_count":36,"forks_count":576,"subscribers_count":55,"default_branch":"master","last_synced_at":"2025-05-12T02:38:10.740Z","etag":null,"topics":["aws","aws-s3","coreutils","filesystem","go","golang","s3","s3-bucket","storage","tools"],"latest_commit_sha":null,"homepage":"https://min.io/download","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/minio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"code_of_conduct.md","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,"zenodo":null}},"created_at":"2015-01-16T02:56:51.000Z","updated_at":"2025-05-10T10:54:48.000Z","dependencies_parsed_at":"2024-01-23T06:23:55.161Z","dependency_job_id":"a5063084-922d-4c27-9ef1-4bbcdd05f761","html_url":"https://github.com/minio/mc","commit_stats":{"total_commits":3460,"total_committers":162,"mean_commits":"21.358024691358025","dds":0.6641618497109827,"last_synced_commit":"3cfa8642fdab18e3c1599360be26167e377063cf"},"previous_names":[],"tags_count":318,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minio%2Fmc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minio%2Fmc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minio%2Fmc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minio%2Fmc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/minio","download_url":"https://codeload.github.com/minio/mc/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253672614,"owners_count":21945477,"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":["aws","aws-s3","coreutils","filesystem","go","golang","s3","s3-bucket","storage","tools"],"created_at":"2024-08-01T02:01:10.301Z","updated_at":"2025-05-12T05:12:53.776Z","avatar_url":"https://github.com/minio.png","language":"Go","readme":"# MinIO Client Quickstart Guide\n[![Slack](https://slack.min.io/slack?type=svg)](https://slack.min.io) [![Go Report Card](https://goreportcard.com/badge/minio/mc)](https://goreportcard.com/report/minio/mc) [![Docker Pulls](https://img.shields.io/docker/pulls/minio/mc.svg?maxAge=604800)](https://hub.docker.com/r/minio/mc/) [![license](https://img.shields.io/badge/license-AGPL%20V3-blue)](https://github.com/minio/mc/blob/master/LICENSE)\n\n# Documentation\n- [MC documentation](https://min.io/docs/minio/linux/reference/minio-mc.html)\n\nMinIO Client (mc) provides a modern alternative to UNIX commands like ls, cat, cp, mirror, diff, find etc. It supports filesystems and Amazon S3 compatible cloud storage service (AWS Signature v2 and v4).\n\n```\n  alias      manage server credentials in configuration file\n  admin      manage MinIO servers\n  anonymous  manage anonymous access to buckets and objects\n  batch      manage batch jobs\n  cp         copy objects\n  cat        display object contents\n  diff       list differences in object name, size, and date between two buckets\n  du         summarize disk usage recursively\n  encrypt    manage bucket encryption config\n  event      manage object notifications\n  find       search for objects\n  get        get s3 object to local\n  head       display first 'n' lines of an object\n  ilm        manage bucket lifecycle\n  idp        manage MinIO IDentity Provider server configuration\n  license    license related commands\n  legalhold  manage legal hold for object(s)\n  ls         list buckets and objects\n  mb         make a bucket\n  mv         move objects\n  mirror     synchronize object(s) to a remote site\n  od         measure single stream upload and download\n  ping       perform liveness check\n  pipe       stream STDIN to an object\n  put        upload an object to a bucket\n  quota      manage bucket quota\n  rm         remove object(s)\n  retention  set retention for object(s)\n  rb         remove a bucket\n  replicate  configure server side bucket replication\n  ready      checks if the cluster is ready or not\n  sql        run sql queries on objects\n  stat       show object metadata\n  support    support related commands\n  share      generate URL for temporary access to an object\n  tree       list buckets and objects in a tree format\n  tag        manage tags for bucket and object(s)\n  undo       undo PUT/DELETE operations\n  update     update mc to latest release\n  version    manage bucket versioning\n  watch      listen for object notification events\n```\n\n## Docker Container\n### Stable\n```\ndocker pull minio/mc\ndocker run minio/mc ls play\n```\n\n### Edge\n```\ndocker pull minio/mc:edge\ndocker run minio/mc:edge ls play\n```\n\n**Note:** Above examples run `mc` against MinIO [_play_ environment](#test-your-setup) by default. To run `mc` against other S3 compatible servers, start the container this way:\n\n```\ndocker run -it --entrypoint=/bin/sh minio/mc\n```\n\nthen use the [`mc alias` command](#add-a-cloud-storage-service).\n\n### GitLab CI\nWhen using the Docker container in GitLab CI, you must [set the entrypoint to an empty string](https://docs.gitlab.com/ee/ci/docker/using_docker_images.html#override-the-entrypoint-of-an-image).\n\n```\ndeploy:\n  image:\n    name: minio/mc\n    entrypoint: ['']\n  stage: deploy\n  before_script:\n    - mc alias set minio $MINIO_HOST $MINIO_ACCESS_KEY $MINIO_SECRET_KEY\n  script:\n    - mc cp \u003csource\u003e \u003cdestination\u003e\n```\n\n## macOS\n### Homebrew\nInstall mc packages using [Homebrew](http://brew.sh/)\n\n```\nbrew install minio/stable/mc\nmc --help\n```\n\n## GNU/Linux\n### Binary Download\n| Platform | Architecture | URL |\n| ---------- | -------- |------|\n|GNU/Linux|64-bit Intel|https://dl.min.io/client/mc/release/linux-amd64/mc |\n|GNU/Linux|64-bit PPC|https://dl.min.io/client/mc/release/linux-ppc64le/mc |\n|GNU/Linux|64-bit ARM|https://dl.min.io/client/mc/release/linux-arm64/mc |\n|Linux/s390x|S390X|https://dl.min.io/client/mc/release/linux-s390x/mc |\n\n```\nwget https://dl.min.io/client/mc/release/linux-amd64/mc\nchmod +x mc\n./mc --help\n```\n\n## Microsoft Windows\n### Binary Download\n| Platform | Architecture | URL |\n| ---------- | -------- |------|\n|Microsoft Windows|64-bit Intel|https://dl.min.io/client/mc/release/windows-amd64/mc.exe |\n\n```\nmc.exe --help\n```\n\n## Install from Source\nSource installation is only intended for developers and advanced users. If you do not have a working Golang environment, please follow [How to install Golang](https://golang.org/doc/install). Minimum version required is [go1.22](https://golang.org/dl/#stable)\n\n```sh\ngo install github.com/minio/mc@latest\n```\n\n## Add a Cloud Storage Service\nIf you are planning to use `mc` only on POSIX compatible filesystems, you may skip this step and proceed to [everyday use](#everyday-use).\n\nTo add one or more Amazon S3 compatible hosts, please follow the instructions below. `mc` stores all its configuration information in ``~/.mc/config.json`` file.\n\n```\nmc alias set \u003cALIAS\u003e \u003cYOUR-S3-ENDPOINT\u003e \u003cYOUR-ACCESS-KEY\u003e \u003cYOUR-SECRET-KEY\u003e --api \u003cAPI-SIGNATURE\u003e --path \u003cBUCKET-LOOKUP-TYPE\u003e\n```\n\n`\u003cALIAS\u003e` is simply a short name to your cloud storage service. S3 end-point, access and secret keys are supplied by your cloud storage provider. API signature is an optional argument. By default, it is set to \"S3v4\".\n\nPath is an optional argument. It is used to indicate whether dns or path style url requests are supported by the server. It accepts \"on\", \"off\" as valid values to enable/disable path style requests.. By default, it is set to \"auto\" and SDK automatically determines the type of url lookup to use.\n\n### Example - MinIO Cloud Storage\nMinIO server startup banner displays URL, access and secret keys.\n\n```\nmc alias set minio http://192.168.1.51 BKIKJAA5BMMU2RHO6IBB V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12\n```\n\n### Example - Amazon S3 Cloud Storage\nGet your AccessKeyID and SecretAccessKey by following [AWS Credentials Guide](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html).\n\n```\nmc alias set s3 https://s3.amazonaws.com BKIKJAA5BMMU2RHO6IBB V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12\n```\n\n**Note**: As an IAM user on Amazon S3 you need to make sure the user has full access to the buckets or set the following restricted policy for your IAM user\n\n```json\n{\n    \"Version\": \"2012-10-17\",\n    \"Statement\": [\n        {\n            \"Sid\": \"AllowBucketStat\",\n            \"Effect\": \"Allow\",\n            \"Action\": [\n                \"s3:HeadBucket\"\n            ],\n            \"Resource\": \"*\"\n        },\n        {\n            \"Sid\": \"AllowThisBucketOnly\",\n            \"Effect\": \"Allow\",\n            \"Action\": \"s3:*\",\n            \"Resource\": [\n                \"arn:aws:s3:::\u003cyour-restricted-bucket\u003e/*\",\n                \"arn:aws:s3:::\u003cyour-restricted-bucket\u003e\"\n            ]\n        }\n    ]\n}\n```\n\n### Example - Google Cloud Storage\nGet your AccessKeyID and SecretAccessKey by following [Google Credentials Guide](https://cloud.google.com/storage/docs/migrating?hl=en#keys)\n\n```\nmc alias set gcs  https://storage.googleapis.com BKIKJAA5BMMU2RHO6IBB V8f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12\n```\n\n## Test Your Setup\n`mc` is pre-configured with https://play.min.io, aliased as \"play\". It is a hosted MinIO server for testing and development purpose.  To test Amazon S3, simply replace \"play\" with \"s3\" or the alias you used at the time of setup.\n\n*Example:*\n\nList all buckets from https://play.min.io\n\n```\nmc ls play\n[2016-03-22 19:47:48 PDT]     0B my-bucketname/\n[2016-03-22 22:01:07 PDT]     0B mytestbucket/\n[2016-03-22 20:04:39 PDT]     0B mybucketname/\n[2016-01-28 17:23:11 PST]     0B newbucket/\n[2016-03-20 09:08:36 PDT]     0B s3git-test/\n```\n\nMake a bucket\n`mb` command creates a new bucket.\n\n*Example:*\n```\nmc mb play/mybucket\nBucket created successfully `play/mybucket`.\n```\n\nCopy Objects\n`cp` command copies data from one or more sources to a target.\n\n*Example:*\n```\nmc cp myobject.txt play/mybucket\nmyobject.txt:    14 B / 14 B  ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓  100.00 % 41 B/s 0\n```\n\n## Everyday Use\n\n### Shell aliases\nYou may add shell aliases to override your common Unix tools.\n\n```\nalias ls='mc ls'\nalias cp='mc cp'\nalias cat='mc cat'\nalias mkdir='mc mb'\nalias pipe='mc pipe'\nalias find='mc find'\n```\n\n### Shell autocompletion\nIn case you are using bash, zsh or fish. Shell completion is embedded by default in `mc`, to install auto-completion use `mc --autocompletion`. Restart the shell, mc will auto-complete commands as shown below.\n\n```\nmc \u003cTAB\u003e\nadmin    config   diff     find     ls       mirror   policy   session  sql      update   watch\ncat      cp       event    head     mb       pipe     rm       share    stat     version\n```\n\n## Contribute to MinIO Project\nPlease follow MinIO [Contributor's Guide](https://github.com/minio/mc/blob/master/CONTRIBUTING.md)\n\n## License\nUse of `mc` is governed by the GNU AGPLv3 license that can be found in the [LICENSE](https://github.com/minio/mc/blob/master/LICENSE) file.\n","funding_links":[],"categories":["Utilities","Go","Applications","HarmonyOS","工具库","公用事业公司","golang","aws","Open Source Repos","工具库`可以提升效率的通用代码库和工具`","实用工具","實用工具","Utility"],"sub_categories":["Utility/Miscellaneous","Cloud and DevOps","HTTP Clients","Fail injection","Windows Manager","查询语","实用程序/Miscellaneous","Advanced Console UIs","S3","高級控制台界面","交流","\u003cspan id=\"高级控制台用户界面-advanced-console-uis\"\u003e高级控制台用户界面 Advanced Console UIs\u003c/span\u003e","高级控制台界面"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fminio%2Fmc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fminio%2Fmc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fminio%2Fmc/lists"}