如何将.txt中的两个值分离到两个不同的文件?

2024-05-23 19:28:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我在.txt文件中有一组用户数据库转储(假设在C:\dumps文件夹中)

所有.txt文件的结构都相同:

login:password
login:password
login:password

我的问题是,将登录名从所有文件中分离出来的最简单方法是什么 “logins.txt”和“passwords.txt”的单独密码? 这些是用于统计目的的数据,因此没有顺序[最终将被排序]

我试过:

gawk.exe -F: "{print $ 1}" dump1.txt > logins1.txt
gawk.exe -F: "{print $ 2}" dump1.txt > passwords1.txt
gawk.exe -F: "{print $ 1}" dump2.txt > logins2.txt
gawk.exe -F: "{print $ 2}" dump2.txt > passwords2.txt

这个方法是有效的,但是由于文件的数量,我想问一个简单的方法来自动将这两个数据从我在这个文件夹中的文件中分离出来


Tags: 文件数据方法用户txt文件夹数据库login
1条回答
网友
1楼 · 发布于 2024-05-23 19:28:48

您可以在多个文件上运行awk,也可以从awk代码中执行操作重定向,因此:

awk -F: '{ split(FILENAME,map,".");fileno=substr(map[1],length(map[1]));print $1 > "login"fileno".txt"; print $2 > "password"fileno".txt" }' dump*.txt

我们将字段分隔符设置为:然后使用awk的保留文件名变量跟踪正在处理的现有文件。通过使用awk的split函数并引用map[1],我们通过在数组映射中分割文件名来获得文件名前缀。然后,我们使用awk的substr函数进一步处理这个问题,以从文件前缀的最后一个字符获取文件号。我们使用此filno变量将$1输出到登录文件,将$2输出到密码文件

相关问题 更多 >