【Linux命令200例】split将一个大文件拆分成多个小文件

在这里插入图片描述

🏆作者简介,黑夜开发者,全栈领域新星创作者✌,阿里云社区专家博主✌,2023年6月csdn上海赛道top4✌。
🏆本文已收录于专栏:Linux命令大全。
🏆本专栏我们会通过具体的系统的命令讲解加上鲜活的实操案例对各个命令进行深入讲解。欢迎提前锁定关注。
🎉欢迎 👍点赞✍评论⭐收藏

文章目录

  • 🚀一、split命令简介
  • 🚀二、split命令的使用方法
  • 🚀三、split命令参数解析
  • 🚀四、split命令实际使用示例
    • 🔎4.1 将文件按照大小拆分成多个小文件
    • 🔎4.2 按照行数将文件拆分成多个小文件
    • 🔎4.3 使用数字作为输出文件后缀
    • 🔎4.4 使用字母后缀,并指定后缀长度
    • 🔎4.5 将输出文件保存到指定目录
    • 🔎4.6 按照字节数拆分文件
    • 🔎4.7 拆分加密文件
    • 🔎4.8 显示拆分过程详细信息
  • 🚀五、总结


🚀一、split命令简介

split是Linux系统中的一个文件拆分命令,它可以将一个大文件拆分成多个小文件。这对于处理大型文件,或者需要将数据分解到多个文件中的场景非常有用。

🚀二、split命令的使用方法

split命令的基本语法如下:

split [参数] [输入文件] [输出文件前缀]

🚀三、split命令参数解析

split命令支持一系列参数,下面是其中几个常用的参数:

  • -b: 指定每个输出文件的大小,单位为字节或者KB、MB
  • -C: 指定每个输出文件的行数,可以使用数字后缀G(表示吉比字节)、M(表示兆字节)、K(表示千字节)
  • -l: 指定每个输出文件的行数
  • -d: 使用数字作为输出文件名后缀,默认使用字母
  • -a: 使用字母或数字后缀作为输出文件名,默认使用两个字母后缀
  • –verbose: 显示拆分过程的详细信息

🚀四、split命令实际使用示例

🔎4.1 将文件按照大小拆分成多个小文件

假设我们有一个名为"largefile.txt"的大文件,大小为10MB,我们希望将其拆分成大小为1MB的小文件。可以使用以下命令:

split -b 1M largefile.txt smallfile

该命令会将largefile.txt拆分成10个小文件,文件名分别为smallfileaa、smallfileab、…、smallfileaj。

🔎4.2 按照行数将文件拆分成多个小文件

假设我们有一个名为"data.csv"的数据文件,它包含了1000行的数据,我们希望将其拆分成每个文件包含100行的小文件。可以使用以下命令:

split -l 100 data.csv smallfile

该命令会将data.csv拆分成10个小文件,文件名分别为smallfileaa、smallfileab、…、smallfileaj。

🔎4.3 使用数字作为输出文件后缀

有时候我们希望使用数字而不是字母作为输出文件的后缀,例如:

split -d -l 100 data.csv smallfile

该命令会将data.csv拆分成以数字作为后缀的小文件,文件名分别为smallfile00、smallfile01、…、smallfile09。

🔎4.4 使用字母后缀,并指定后缀长度

如果需要指定字母后缀的长度,可以使用-a参数,例如:

split -a 3 -l 100 data.csv smallfile

该命令会将data.csv拆分成带3位字母后缀的小文件,文件名分别为smallfileaaa、smallfileaab、…、smallfileajkj。

🔎4.5 将输出文件保存到指定目录

假设我们希望将拆分后的文件保存到指定目录,可以使用以下命令:

split -l 100 data.csv /path/to/output/smallfile

该命令会将data.csv拆分成100行小文件,并将这些文件保存在指定目录"/path/to/output/"下。

🔎4.6 按照字节数拆分文件

除了按照行数拆分文件,我们还可以按照字节数进行拆分。例如,我们希望将一个1GB大小的文件拆分成100MB大小的小文件,可以使用以下命令:

split -b 100M largefile.txt smallfile

该命令会将largefile.txt拆分成10个小文件,每个文件的大小为100MB。

🔎4.7 拆分加密文件

如果我们需要将一个加密的文件拆分成多个小文件,可以先解密再拆分。例如,假设我们有一个名为"encrypted.txt"的加密文件,在拆分之前需要先解密,可以使用以下命令:

openssl aes-256-cbc -d -in encrypted.txt -out decrypted.txt
split -l 100 decrypted.txt smallfile

🔎4.8 显示拆分过程详细信息

如果希望查看拆分过程的详细信息,可以添加–verbose参数。例如:

split --verbose -l 100 data.csv smallfile

该命令会打印出拆分过程的详细信息,包括拆分文件的大小、输出文件名等。

🚀五、总结

split是一个非常有用的文件拆分命令,它可以根据大小或者行数将大文件拆分成多个小文件。通过本文介绍的实际应用示例,我们了解了split命令的基本用法,并掌握了一些常用的参数。希望这篇文章能够帮助你更好地理解和使用split命令。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/56112.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Windows下FreeImage库的配置

首先下载FreeImage库,http://freeimage.sourceforge.net/download.html,官网下载如下: 内部下载地址:https://download.csdn.net/download/qq_36314864/88140305 解压后,打开FreeImage.2017.sln,如果是vs…

springboot参数校验

springboot参数传递 PathVariableRequestParamRequestBody JSR303 jsr303 : 也称 bean validation 规范,用于java bean 验证的标准API,,他定义了一组注解,可以在javabean 的属性上声明验证规则 JSR: ja…

微信公众号开发学习

申请测试号 地址 通过F12抓取体验接口权限表的HTML 解析HTML 引入pom <dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><…

127.【SpringBoot 源码刨析D】

SpringBoot 源码刨析D (三)、SpringBoot 核心功能4.单元测试功能(1).JUnit5 的变化(2).JUnit5常用注解(3).断言&#xff08; assertions &#xff09;(3.1).简单断言(3.2).数组断言(3.3).组合断言(3.4).异常断言(3.5).超时断言(3.6).快速失败 (4).前置条件&#xff08; assumpt…

SpringBoot集成MyBatisPlus+MySQL(超详细)

前言 查看此文章前强烈建议先看这篇文章&#xff1a;Java江湖路 | 专栏目录 该文章纪录的是SpringBoot快速集成MyBatis Plus&#xff0c;每一步都有记录&#xff0c;争取每一位看该文章的小伙伴都能操作成功。达到自己想要的效果~ 文章目录 前言1、什么是MyBatisPlus2、Spring…

JetBrains 为测试自动化打造的强大 IDE-Aqua

QA 和测试工程对现代软件开发必不可少。 在 JetBrains&#xff0c;我们相信使用正确的工具对每项工作都很重要。 对我们来说&#xff0c;为自动化测试开发创建单独的工具是自然而然的事&#xff0c;因为这使我们能够满足多角色软件开发团队的需求。 我们很高兴能够推出 JetBra…

Windows下RocketMQ的启动

下载地址&#xff1a;下载 | RocketMQ 解压后 一、修改runbroker.cmd 修改 bin目录下的runbroker.cmd set "JAVA_OPT%JAVA_OPT% -server -Xms2g -Xmx2g" set "JAVA_OPT%JAVA_OPT% -XX:MaxDirectMemorySize15g" set "JAVA_OPT%JAVA_OPT% -cp %CLASSP…

给你一个小技巧,解放办公室管理!

电力的稳定供应对于现代社会中的办公室和企业来说至关重要。为了应对这些潜在的问题&#xff0c;许多办公室和企业都采用了不间断电源&#xff08;UPS&#xff09;系统来提供电力备份。UPS可以保持关键设备的运行&#xff0c;确保生产和业务不受干扰。 然而&#xff0c;仅仅安装…

C# Blazor 学习笔记(0.1):如何开始Blazor和vs基本设置

文章目录 前言资源推荐环境如何开始Blazor个人推荐设置注释快捷键热重载设置 前言 Blazor简单来说就是微软提供的.NET 前端框架。使用 WebAssembly的“云浏览器”&#xff0c;集成了Vue,React,Angular等知名前端框架的特点。 资源推荐 微软官方文档 Blazor入门基础视频合集 …

NO4 实验四:生成Web工程

1、说明 使用 mvn archetype&#xff1a;generate 命令生成 Web 工程时&#xff0c;需要使用一个专门的 archetype。这个专门生成 Web 工程骨架的 archetype 可以参照官网看到它的用法&#xff1a; 2、操作 注意&#xff1a;如果在上一个工程的目录下执行 mvn archetype&…

​LeetCode解法汇总142. 环形链表 II

目录链接&#xff1a; 力扣编程题-解法汇总_分享记录-CSDN博客 GitHub同步刷题项目&#xff1a; https://github.com/September26/java-algorithms 原题链接&#xff1a; 力扣 描述&#xff1a; 给定一个链表的头节点 head &#xff0c;返回链表开始入环的第一个节点。 如…

Spring Boot配置文件

hi,大家好,今天为大家带来Spring Boot 的配置文件相关的知识 文章目录 &#x1f437;上期遗留问题:约定大于配置:&#x1f96b;1.配置文件作用&#x1f96b;2.配置文件格式&#x1f96b;3.properties配置文件介绍&#x1f367;3.1properties基本语法&#x1f367;3.2 读取配置…

IDEA live templates

surround 在SQL的xml里 可以修改变量 官方文档 CDATA not null <if test"$SELECTION$ ! null and $SELECTION$ ! "> and $VAR1$ #{$SELECTION$} </if>not null like mysql <if test"$SELECTION$ ! null and $SELECTION$ ! "> and…

大数据技术之Clickhouse---入门篇---数据类型、表引擎

星光下的赶路人star的个人主页 今天没有开始的事&#xff0c;明天绝对不会完成 文章目录 1、数据类型1.1 整型1.2 浮点型1.3 布尔型1.4 Decimal型1.5 字符串1.6 枚举类型1.7 时间类型1.8 数组 2、表引擎2.1 表引擎的使用2.2 TinyLog2.3 Memory2.4 MergeTree2.4.1 Partition by分…

系统架构设计师_备考第2天(计算机组成与体系结构)

文章目录 考频&#xff08;3分左右&#xff09;一、计算机结构二、CPU组成三、冯诺依曼结构和哈弗结构四、层次化存储结构五、Cache 考频&#xff08;3分左右&#xff09; 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 计算机结构&#xff08;★&#xff0…

语义检索系统【四】:基于ERNIE-Gram的Pair-wise和基于RocketQA的CrossEncoder训练的单塔模型实现数据精排

搜索推荐系统专栏简介:搜索推荐全流程讲解(召回粗排精排重排混排)、系统架构、常见问题、算法项目实战总结、技术细节以及项目实战(含码源) 专栏详细介绍:搜索推荐系统专栏简介:搜索推荐全流程讲解(召回粗排精排重排混排)、系统架构、常见问题、算法项目实战总结、技术…

阿里云负载均衡SLB网络型NLB负载均衡架构性能详解

阿里云网络型负载均衡NLB是阿里云推出的新一代四层负载均衡&#xff0c;支持超高性能和自动弹性能力&#xff0c;单实例可以达到1亿并发连接&#xff0c;帮您轻松应对高并发业务。网络型负载均衡NLB具有超强性能、自动弹性伸缩、高可用、TCPSSL卸载、多场景流量分发和丰富的高级…

Eureka 学习笔记3:EurekaHttpClient

版本 awsVersion ‘1.11.277’ EurekaTransport 用于客户端和服务端之间进行通信&#xff0c;封装了以下接口的实现&#xff1a; ClosableResolver 接口实现TransportClientFactory 接口实现EurekaHttpClient 接口实现及其对应的 EurekaHttpClientFactory 接口实现 private …

搜索与图论(一)

一、DFS与BFS 1.1深度优先搜索(DFS) DFS不具有最短性 //排列数字问题 #include<iostream> using namespace std;const int N 10; int n; int path[N]; bool st[N];void dfs(int u) {if(u n){for(int i 0;i < n;i) printf("%d",path[i]);puts("&qu…

配置IPv6 over IPv4手动隧道示例

组网需求 如图1所示&#xff0c;两台IPv6主机分别通过SwitchA和SwitchC与IPv4骨干网络连接&#xff0c;客户希望两台IPv6主机能通过IPv4骨干网互通。 图1 配置IPv6 over IPv4手动隧道组网图 配置思路 配置IPv6 over IPv4手动隧道的思路如下&#xff1a; 配置IPv4网络。配置接…