s3cmd 安装使用指南
https://wangyan.org/blog/s3cmd-how-to-use.html
s3cmd 安装使用指南
s3cmd 是一款 Amazon S3 命令行工具。它不仅能上传、下载、同步,还能设置权限,下面是完整的安装使用指南。
一、安装方法
方法一:(Debian/Ubuntu )
1 |
wget -O- -q http://s3tools.org/repo/deb-all/stable/s3tools.key | sudo apt-key add - |
方法二:
1 |
wget http://nchc.dl.sourceforge.net/project/s3tools/s3cmd/1.0.0/s3cmd-1.0.0.tar.gz |
二、使用方法
1、配置,主要是 Access Key ID 和 Secret Access Key
1 |
s3cmd --configure |
2、列举所有 Buckets。(bucket 相当于根文件夹)
1 |
s3cmd ls |
3、创建 bucket,且 bucket 名称是唯一的,不能重复。
1 |
s3cmd mb s3://my-bucket-name |
4、删除空 bucket
1 |
s3cmd rb s3://my-bucket-name |
5、列举 Bucket 中的内容
1 |
s3cmd ls s3://my-bucket-name |
6、上传 file.txt 到某个 bucket,
1 |
s3cmd put file.txt s3://my-bucket-name/file.txt |
7、上传并将权限设置为所有人可读
1 |
s3cmd put --acl-public file.txt s3://my-bucket-name/file.txt |
8、批量上传文件
1 |
s3cmd put ./* s3://my-bucket-name/ |
9、下载文件
1 |
s3cmd get s3://my-bucket-name/file.txt file.txt |
10、批量下载
1 |
s3cmd get s3://my-bucket-name/* ./ |
11、删除文件
1 |
s3cmd del s3://my-bucket-name/file.txt |
12、来获得对应的bucket所占用的空间大小
1 |
s3cmd du -H s3://my-bucket-name |
三、目录处理规则
以下命令都能将dir1 中的文件上传至my-bucket-name,但效果只截然不同的。
1)dir1 不带"/"斜杠,那么dir1会作为文件路径的一部分,相当于上传整个dir1目录,即类似 "cp -r dir1/"
1 |
~/demo$ s3cmd put -r dir1 s3://my-bucket-name/ |
2)带"/"斜杠的 dir1,相当于上传dir1目录下的所有文件,即类似 "cp ./* "
1 |
~/demo$ s3cmd put -r dir1/ s3://my-bucket-name/ |
四、同步方法
这是s3cmd 使用难点,但却是最实用的功能。官方使用说明见《s3cmd sync HowTo》
首先明确,同步操作是要进行MD5校验的,只有当文件不同时,才会被传输。
4.1、常规同步操作
1、同步当前目录下所有文件
1 |
s3cmd sync ./ s3://my-bucket-name/ |
2、加 "--dry-run"参数后,仅列出需要同步的项目,不实际进行同步。
1 |
s3cmd sync --dry-run ./ s3://my-bucket-name/ |
3、加 " --delete-removed"参数后,会删除本地不存在的文件。
1 |
s3cmd sync --delete-removed ./ s3://my-bucket-name/ |
4、加 " --skip-existing"参数后,不进行MD5校验,直接跳过本地已存在的文件。
1 |
s3cmd sync --skip-existing ./ s3://my-bucket-name/ |
4.2、高级同步操作
4.2.1、排除、包含规则(--exclude 、--include)
file1-1.txt被排除,file2-2.txt同样是txt格式却能被包含。
1 |
~/demo$ s3cmd sync --dry-run --exclude '*.txt' --include 'dir2/*' ./ s3://my-bucket-name/ |
4.2.2、从文件中载入排除或包含规则。(--exclude-from、--include-from)
1 |
s3cmd sync --exclude-from pictures.exclude ./ s3://my-bucket-name/ |
pictures.exclude 文件内容
1 |
# Hey, comments are allowed here ;-) |
4.2.3、排除或包含规则支持正则表达式
1 |
--rexclude 、--rinclude、--rexclude-from、--rinclude-from |
s3cmd 安装使用指南的更多相关文章
- [转载]SharePoint 2013测试环境安装配置指南
软件版本 Windows Server 2012 标准版 SQL Server 2012 标准版 SharePoint Server 2013 企业版 Office Web Apps 2013 备注: ...
- centOS安装Mysql指南
centOS安装Mysql指南 说明:使用操作系统centOS6.4 32位系统:mysql:mysql-5.7.10-linux-glibc2.5-i686.tar.gz; 一.准备 下载mysql ...
- Cadence OrCad Allegro SPB 16.6 下载及安装破解指南
Cadence公司的电子设计自动化产品涵盖了电子设计的整个流程,包括系统级设计,功能验证,IC综合及布局布线,模拟.混合信号及射频IC设计,全定制集成电路设计,IC物理验证,PCB设计和硬件仿真建模等 ...
- 【转】服务器证书安装配置指南(Weblogic)
服务器证书安装配置指南(Weblogic) 详情请点击: http://verisign.itrus.com.cn/html/fuwuyuzhichi/fuwuqizhengshuanzhuangpe ...
- 大数据应用日志采集之Scribe 安装配置指南
大数据应用日志采集之Scribe 安装配置指南 大数据应用日志采集之Scribe 安装配置指南 1.概述 Scribe是Facebook开源的日志收集系统,在Facebook内部已经得到大量的应用.它 ...
- Ubuntu 14 安装MySQL指南
ubuntu 14 安装MySQL指南安装MySQLsudo apt-get install mysql-server这个应该很简单了,而且我觉得大家在安装方面也没什么太大问题,所以也就不多说了,下面 ...
- 【转】Syncthing – 数据同步利器---自己的网盘,详细安装配置指南,内网使用,发现服务器配置
Syncthing – 数据同步利器---自己的网盘,详细安装配置指南,内网使用,发现服务器配置 原贴:https://www.cnblogs.com/jackadam/p/8568833.html ...
- 阿里巴巴Java编码规范插件安装使用指南
编码规范插件安装使用指南 阿里技术公众号公布的<阿里巴巴Java开发规约>,瞬间引起全民代码规范的热潮,后又发布了PDF的终极版,大家踊跃留言,期待配套的静态扫描工具开放出来. 为了让开发 ...
- 高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南
原文:http://my.oschina.net/wstone/blog/365010#OSC_h3_13 (WJW)高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南 [X] ...
随机推荐
- 操作系统/应用程序、操作中的“并发”、线程和进程,python中线程和进程(GIL锁),python线程编写+锁
并发编程前言: 1.网络应用 1)爬虫 直接应用并发编程: 2)网络框架 django flask tornado 源码-并发编程 3)socketserver 源码-并发编程 2.运维领域 1)自动 ...
- 非Linux环境下调用sh命令
方法一:把cygwin的bin配置到环境变量里,这样做了以后在cmd.exe里也可以使用linux的命令 def exe_command(command): p = subprocess.Popen( ...
- OpenCV3计算机视觉+Python(五)
人脸检测和识别 本章将介绍Haar级联分类器,通过对比分析相邻图像区域来判断给定图像或子图像与已知对象是否匹配.本章将考虑如何将多个Haar级联分类器构成一个层次结构,即一个分类器能识别整体区域(如人 ...
- 判断IP地址是否合法
/* return 1 if string contain only digits, else return 0 */ int valid_digit(char *ip_str) { while (* ...
- KGX滚动分页源码
源码描述: 本工具采用Jquery框架,通过jquery调用ashx获取并输出数据,示例中采用测试数据,可以自行扩展为图片等等 当下流行的分页方式,鼠标滚动下拉条会自动展示下一页信息,类似瀑布流的效果 ...
- mysq数据库的安装和基本操作
一.数据库的简介 1.什么是数据库? 数据库(database,DB)是指长期存储在计算机内的,有组织,可共享的数据的集合.数据库中的数据按一定的数学模型组织.描述和存储,具有较小的冗余,较高的数据独 ...
- iOS警告框和操作表
应用如何与用户交流呢? 警告框(AlertView)和操作表(ActionSheet)就是为此而设计的. 本文案例的原型草图如图3-48所示,其中有两个按钮“Test警告框”和“Test操作表”,点击 ...
- 20145230《java程序设计》第6周学习总结
20145230 <Java程序设计>第6周学习总结 教材学习内容 串流设计的概念 Java将输入/输出抽象化为串流,数据有来源及目的地,衔接两者的是串流对象.如果要将数据从来源取出,可以 ...
- 写makefile时候的cc和gcc
Linux 下 的 cc 和 gcc Linux 下 的 cc 和 gcc 周银辉 在Linux下一会看到cc,另一会又看到gcc,感觉又点混乱的样子.它们是同一个东西么,有啥区别呢 一分为二 ...
- HDU 1166 敌兵布阵 【线段树-点修改--计算区间和】
敌兵布阵 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...