MinIO服务器文件复制(Windows环境&Linux环境)

一、下载

Windows环境:https://dl.min.io/server/minio/release/windows-amd64/minio.exe

Linux环境:

bash 复制代码
> curl https://dl.min.io/client/mc/release/linux-amd64/mc \ 
--create-dirs \ 
-o $HOME/minio/mc 

> chmod +x $HOME/minio/mc 

> export PATH=$PATH:$HOME/minio/

二、准备好MinIO服务器需要复制的完整文件路径,以及配置需要复制的目标文件完整路径

(注意:需要指定MinIO连接服务的别名,通过命令:mc alias set myMinio [host] [user] [password] 来指定),此处 别名就是 myMinio

mc 复制文件语法:

bash 复制代码
./mc cp [source full path] [target full path]

示例文件(本文批处理文件如下),如创建文件 /tmp/mini_cp.txt,内容如下:

myMinio/srcBucket/1.png myMinio/targetBucket/1.png

myMinio/srcBucket/2.png myMinio/targetBucket/2.png

myMinio/srcBucket/3.png myMinio/targetBucket/3.png

三、创建MC shell脚本

1.Windows环境

bash 复制代码
@echo off
CHCP 65001
cd /d "%~dp0"
::Local MinIO
::set filename=E:\tmp\localToCopyFileList.txt
::set minioapiurl=http://127.0.0.1:9001
::set user=admin
::set pwd=minioadmin

%cd%\bin\mc.exe alias set myminio %minioapiurl% %user% %pwd%
echo 待复制文件列表路径:%filename%

set /a count=0;

setlocal enabledelayedexpansion
for /f "tokens=*" %%a in (%filename%) do (
	set /a count+=1
	echo Coping No.!count! file:%%a
	%cd%\bin\mc.exe cp %%a
)
echo 本次共复制文件:!count!个!
@echo pause

2.Linux环境

bash 复制代码
chmod +x mccp.sh
bash 复制代码
#!/bin/bash

# minio S3服务地址
minio_host="http://127.0.0.1:9001"
user="admin"
passwd="minioadmin"


filename="${1}"

if [ ! "${filename}" ]; then
        echo "请在命令行后指定完整文件路径!"
        exit 1
fi

if [ ! -f "${filename}" ]; then
        echo "文件路径不存在: ${filename}!"
        exit 1
fi

# 设置minio服务连接别名
./mc alias set cminio ${minio_host} ${user} ${passwd}
while IFS= read -r line; do
        echo "正在读取行: ${line}"
        # 执行复制操作,line的格式必须是:cminio/ + 完整minio服务器文件路径(包含bucket)
        ./mc cp ${line}
done < "${filename}"

执行脚本 mccp.sh 或 mccp.bat

相关推荐
计算机毕设定制辅导-无忧学长2 小时前
西门子 PLC 与 Modbus 集成:S7-1500 RTU/TCP 配置指南(一)
服务器·数据库·tcp/ip
ZHOU_WUYI3 小时前
一个简单的分布式追踪系统
分布式
cv高级工程师YKY5 小时前
SRE - - PV、UV、VV、IP详解及区别
大数据·服务器·uv
眠修6 小时前
Kuberrnetes 服务发布
linux·运维·服务器
码不停蹄的玄黓7 小时前
MySQL分布式ID冲突详解:场景、原因与解决方案
数据库·分布式·mysql·id冲突
BAOYUCompany7 小时前
暴雨服务器成功中标华中科技大学集成电路学院服务器采购项目
运维·服务器
王小王-1237 小时前
基于Hadoop的公共自行车数据分布式存储和计算平台的设计与实现
大数据·hive·hadoop·分布式·hadoop公共自行车·共享单车大数据分析·hadoop共享单车
鳄鱼皮坡8 小时前
仿muduo库One Thread One Loop式主从Reactor模型实现高并发服务器
运维·服务器
小Mie不吃饭9 小时前
FastAPI 小白教程:从入门级到实战(源码教程)
运维·服务器
要开心吖ZSH9 小时前
《Spring 中上下文传递的那些事儿》Part 4:分布式链路追踪 —— Sleuth + Zipkin 实践
java·分布式·spring