全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 1772|回复: 28

[已解决] 20块钱能否求得一个TXT合并小工具

[复制链接]
发表于 2022-5-20 13:58:14 | 显示全部楼层 |阅读模式
本帖最后由 liumer 于 2022-5-20 14:32 编辑

已求得PY工具一个,谢谢论坛兄弟 。




要求功能如下:
文件夹里有上千个TXT文件 ,由于文件太小,想将其中每2个或3个(这个最好可以自定义)合并成一个,合并后文件名取合并前文件之中的一个文件名即可。

批外理,易语言、PY或其他键鼠类工具做的都 可以。

谢谢!
发表于 2022-5-20 14:23:43 | 显示全部楼层
整了个半成品,最后一次的文件需要手动合并

先写个shell脚本

  1. [root@aml ~/kafka]$ cat /usr/bin/bbb
  2. #!/bin/bash

  3. echo 合并$1 $2到 $3
  4. cat $1 $2 >> $3
  5. rm $1
  6. rm $2
  7. [root@aml ~/kafka]$
复制代码


然后再要合并的目录里执行就可以了

  1. ls | xargs -n 3 bbb
复制代码


会输出

  1. [root@aml ~/kafka]$ ls | xargs -n 3 bbb
  2. 合并test1 test10到 test100
  3. 合并test11 test12到 test13
  4. 合并test14 test15到 test16
  5. 合并test17 test18到 test19
  6. 合并test2 test20到 test21
  7. 合并test22 test23到 test24
  8. 合并test25 test26到 test27
  9. 合并test28 test29到 test3
  10. ...
复制代码
发表于 2022-5-20 14:14:25 | 显示全部楼层
  1. import os

  2. # 需要一下设置两个变量
  3. root_path = r""  # 原始文件目录
  4. new_dir = r""  # 生成目录 需要先创建好

  5. n = 0

  6. tmp_file_name = ""
  7. files_name = os.listdir(root_path)
  8. for file in files_name:
  9.     if n > 2 or tmp_file_name == "":
  10.         tmp_file_name = os.path.join(new_dir, file)
  11.         n = 0
  12.     else:
  13.         n += 1
  14.     file_path = os.path.join(root_path, file)
  15.     with open(file_path, "r", encoding="utf-8") as fn:
  16.         with open(tmp_file_name, "a+", encoding="utf-8") as f:
  17.             f.write(fn.read())
复制代码
发表于 2022-5-20 13:58:43 | 显示全部楼层
百度一下大把
 楼主| 发表于 2022-5-20 13:59:48 | 显示全部楼层

没找到,从昨天开始找到现在没找到,主要就是这每几个合并一起的没有,全部合成一个大文件的找了一堆。
发表于 2022-5-20 14:00:25 来自手机 | 显示全部楼层
这种自己写一个脚本就行了呀
 楼主| 发表于 2022-5-20 14:01:17 | 显示全部楼层
卟想起床 发表于 2022-5-20 14:00
这种自己写一个脚本就行了呀

我就是不会罗。
发表于 2022-5-20 14:02:21 | 显示全部楼层
我想知道,可以直接用二进制拼接吗?
 楼主| 发表于 2022-5-20 14:02:45 | 显示全部楼层
现在领导要求 我手工合并 ,有5千多个文件 ,愁死我了。
发表于 2022-5-20 14:05:01 | 显示全部楼层
直接全部合并成一个文件 然后分割份数
 楼主| 发表于 2022-5-20 14:07:16 | 显示全部楼层
875 发表于 2022-5-20 14:05
直接全部合并成一个文件 然后分割份数

分割也不太好分割,一是分割后的文件名不好弄,二是分割容易把一块内容 分成两块了。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-4-26 13:38 , Processed in 0.063092 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表