《卡死你3000》批量文件复制命令详解

卡死你3000简介:

《卡死你3000》批量文件复制命令详解

名词解释:

批量顺序复制文件:从主控机,到从被控机1,被控机2,复制文件。有卡住问题。

批量并发复制文件:从主控机,到从被控机1,被控机2,复制文件。使用多线程并发,可以控制并发数。并发复制,解决单线程卡住问题。

卡死你3000复制文件命令:

kct, k copy files to 被控机。
kcf。 k copy files from 被控机。

命令系统需求:
上述2条命令,支持win,linux,mac,树莓派中使用;

命令依赖卡死你3000,依赖nodelist.csv;

被控机需要安装powershell;

对于linux被控机,不支持密码连接,需要建立ssh-keyfile,并做免密。

使用场景:

用于推送安装包,推送.sh脚本,推送.py脚本。

卡死你3000,主要复制文件的说明:

2 把文件从主控机的【自定义】目录,复制到被控机的【自定义】目录。
『主控机(孙权)嫁妹,孙尚香.jpg,送给被控机(刘备)』
kct #复制文件,从主控机到被控机

3 把文件从被控机的【自定义】目录,复制到主控机的【自定义】目录。
『蒋干盗书,本来是想劝降东吴。却从东吴(被控机)盗回假的投降书.jpg』
kcf #复制文件,从被控机到主控机

参数:

问:和scp有啥不同?
答:
1可以限制并发任务数。用户自己根据cpu核心数,网卡io,磁盘io,调整并发数。
2scp有个癌症,主控机,被控机都得装scp。而卡死你3000复制文件到linux被控机基于sftp,被控机不需要装scp。

例子:

问:如何从【主控机】到【被控机】复制文件?
答:非并发复制

$1组ip = '1.2.3.4','5.6.7.8'
$1组ip = get-content /root/ip.txt #一行一个ip
foreach ($ip in $1组ip)
{
 cdip $ip
 kct.ps1 -LiteralPath 'c:\主控机源目录' -Destination '/tmp/被控机目标目录' -Recurse #从主控机,向被控机复制文件
}

问:如何从【被控机】到【主控机】批量复制文件?
答:非并发复制

$linux = 'centos7','centos8','debian8','debian9','debian10','debian11','ubuntu1404','ubuntu1604','ubuntu1804','alpine','ubuntu2004','Amazon Linux 2','kylin v10','统信UOS服务器版'

$1组ip = '1.2.3.4','5.6.7.8'
$1组ip = get-content /root/ip.txt #一行一个ip
foreach ($ip in $1组ip)
{
    cdip $ip
    if ($ip.被控机os类型 -in $linux)
    {
        kcf.ps1 -LiteralPath '/tmp' -Destination 'd:\主控机目标目录' -Recurse #从被控机,向主控机复制文件
    }
    else
    {
        kcf.ps1 -LiteralPath 'c:\被控机源目录' -Destination 'd:\主控机目标目录' -Recurse #从被控机,向主控机复制文件
    }
}

同步主控机,被控机之间的【node_script】目录:

【node_script】目录,就是主控机《—-》被控机之间的公用目录
把文件从主控机的【node_script】目录,复制到被控机的【node_script】。
cdip 192.168.1.2 #选中被控机
kctf复制主控机node_script目录脚本到当前被控机.ps1

并发复制:

问:【主控机】,【被控机】复制文件为何是非并发?
答:
我没有开发并发复制文件功能,就怕1000个并发卡死主控机。
所以复制文件,应该用下面的,类似于手动的并发复制。
这种方法,方便写脚本的人,控制并发数量。

问:编写脚本时,如何控制主控机并发任务数?如何控制被控机并发任务数?
答:
1 卡死你3000,有默认多进程并发任务数限制99。多线程不限制并发数。这2个基本不是给【单个用户任务用的】。不建议用户使用这些内容限制并发。
2 对于用户级主控机,被控机,任务。powershell v7版本,及以上。提供这个命令。这是多线程并发。

$多线程外的值_要传递到线程内 = 123
$1组ip = '1.2.3.4','5.6.7.8'
$1组ip = get-content /root/ip.txt #一行一个ip
$1组ip | ForEach-Object -ThrottleLimit 5 -TimeoutSeconds 60 -Parallel  { cdip $_
 kct.ps1 -LiteralPath 'c:\主控机源目录' -Destination '/tmp/被控机目标目录' -Recurse #从主控机,向被控机复制文件
#这里调用函数,必须在这里定义。不能在外部定义。因为这是一个单独的线程。不支持执行代码块。支持调用脚本。
 $c1 = $using:多线程外的值_要传递到线程内 #变量要先克隆到线程内,再计算
}

并发复制,非并发复制,只有1行代码区别。
-ThrottleLimit 5 #限制并发数
-TimeoutSeconds 60 #超时

其他的独立的,复制文件命令:

k_copyto_ip_port_winscp2bash_user_pwd.ps1

默认是,连同子目录一起复制

参数:

【ipaddress】–>【目的ip地址】
【port】–>【端口】
【user】–>【用户名】
【pwd】–>【密码】
【LiteralPath】主控机上的文件目录
【Destination】被控机上的文件目录

【ssh_key_file_path】

k_copyfrom_ip_port_winscp2bash_user_pwd.ps1
默认是,连同子目录一起复制
参数
【ipaddress】–>【目的ip地址】
【port】–>【端口】
【user】–>【用户名】
【pwd】–>【密码】
【LiteralPath】被控机上的文件目录
【Destination】主控机上的文件目录

【ssh_key_file_path】

命令系统需求:
上述命令,只限于win中使用;
命令依赖powershell的winscp模块;
命令不依赖卡死你3000,不依赖nodelist.csv,不需要ssh-keyfile,但需要单独输入ip,端口,账户,密码。

被控机不需要安装powershell。

其他的独立的,复制文件命令:

k_copyfrom_ip_port_w2l_user_expect_pwd.ps1
k_copyto_ip_port_w2l_user_expect_pwd.ps1

命令系统需求:
从win到linux自动输入密码;
支持sudo提权;

被控机需要安装powershell

不需要ssh-keyfile

其他的独立的,文件命令:

k_copyto_ip_port_l2l_user.ps1
k_copyto_ip_port_w2l_user.ps1
k_copyto_ip_port_w2w_user_pwd.ps1
k_copyfrom_ip_port_l2l_user.ps1
k_copyfrom_ip_port_w2l_user.ps1
k_copyfrom_ip_port_w2w_user_pwd.ps1

命令系统需求:

不需要ssh-keyfile

主控机使用上述命令,不依赖卡死你3000,不依赖nodelist.csv,但需要单独输入密码;
不带有pwd的,会提示输入密码。带有pwd的,支持参数输入密码;

被控机需要安装powershell;

Original: https://www.cnblogs.com/piapia/p/14241518.html
Author: PowerShell免费软件
Title: 《卡死你3000》批量文件复制命令详解

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/608937/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Android下获取FPS的几种方法

    FPS(Frames Per Second)是关乎Android用户体验最为重要的指标之一,而在VR中更是如此。为了评估VR系统、VR SDK及Unity应用的性能,通常会实时获取…

    Linux 2023年6月7日
    0101
  • 我叫Mongo,收了「查询基础篇」,值得你拥有

    这是mongo第二篇「查询基础篇」,后续会连续更新6篇 mongodb的文章总结上会有一系列的文章,顺序是先学会怎么用,在学会怎么用好,戒急戒躁,循序渐进,跟着我一起来探索交流。 …

    Linux 2023年6月14日
    0129
  • Linux 下安装 node.js

    这里介绍两种安装方式: 编译安装和使用编译后的安装包安装。 安装目录: /usr/local 一、使用编译安装包安装 1、进入安装目录: 2、下载安装包: 3、解压: 4、进入解压…

    Linux 2023年6月13日
    0100
  • Docker存储卷

    Docker存储卷 1、COW机制 Docker镜像由多个只读层叠加而成,启动容器时,Docker会加载只读镜像层并在镜像栈顶部添加一个读写层。 如果运行中的容器修改了现有的一个已…

    Linux 2023年6月7日
    091
  • 2012年脱离程序员队伍,时隔9年,居然一次性把“冒泡排序”算法写对了

    2012年脱离程序员队伍,时隔9年,居然一次性把”冒泡排序”算法写对了 2021年2月7日 立贴纪念 #include int bubble_sort(in…

    Linux 2023年6月13日
    075
  • Linux系统下安装tomcat步骤

    说明:jdk自动安装后路径是/usr/lib/jvm 在”vim /etc/profile”修改profile文件尾部 unset -f pathmunge…

    Linux 2023年6月6日
    085
  • python_变量

    字符串 1.字符串方法修改大小写 mes = ‘hi, im testing string operation’ print(mes) print(mes.title()) pri…

    Linux 2023年6月7日
    088
  • 企业DevOps之路:jenkins 搭建

    安装 jdk8.0 下载jdk8.0 https://ftp-new-pc.pconline.com.cn/pub/download/201903/pconline15521980…

    Linux 2023年5月27日
    0112
  • win7系统 右击任务栏 资源管理器 弹出菜单“已固定”和“最近”项目不显示故障处理

    故障描述:右击任务栏中资源管理器图标时,弹出菜单只有”资源管理器”和”解除锁定”两个项目,”已固定”和&#8…

    Linux 2023年6月8日
    0119
  • 数据转换-16进制字符

    任务详情 在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务 在utils.h和utils.c中完成16进制字符’0′-&#…

    Linux 2023年6月8日
    091
  • redis的另一个分支 keydb

    今天无意间发现了redis还有一个分支keydb 是多线程的,貌似在机器内核多的情况下效果比redis效果好 执行这些命令 在这之前先把redis关掉 sudo systemctl…

    Linux 2023年5月28日
    086
  • Scrapy关键词 爬虫的简单实现(以新华网和人民网为例)

    新华网爬虫(2022年6月) 1 分析网站结构 新华网网址:新华网_让新闻离你更近 (news.cn) 新华网的首页是带有关键词搜索功能的,我们尝试在搜索栏随意搜索一个关键词 可以…

    Linux 2023年6月7日
    0118
  • docker网络管理

    服务器版本 docker软件版本 CPU架构 CentOS Linux release 7.4.1708 (Core) Docker version 20.10.12 x86_64…

    Linux 2023年6月7日
    091
  • OpenWRT TP_LINK703N 校园网 锐捷认证解决办法

    OpenWRT TP_LINK703N 校园网 锐捷认证解决办法 一、准备的工具 1) SSH登录工具,推荐使用MobaXterm_Personal下载链接https://moba…

    Linux 2023年6月6日
    0100
  • Cookie

    题目如下 打开靶机 根据提示,需要admin登录才能得到flag,题目介绍为Cookie欺骗,认证,伪造 打开burpsuite进行抓包,HTTP数据包是可以修改cookie值的 …

    Linux 2023年6月7日
    086
  • Golang 实现 Redis(11): RDB 文件格式

    RDB 文件使用二进制方式存储 Redis 内存中的数据,具有体积小、加载快的优点。本文主要介绍 RDB 文件的结构和编码方式,并借此探讨二进制编解码和文件处理方式,希望对您有所帮…

    Linux 2023年5月28日
    0102
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球