免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 11420 | 回复: 27
打印 上一主题 下一主题

awk中使用md5sum的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-04-26 17:11 |只看该作者 |倒序浏览
文件A:
京A 00001
京B 00002
京C 00003

想使用系统自带的md5sum函数来加密,输出文件B:
加密后的京A 00001
加密后的京B 00002
加密后的京C 00003


$awk '{print $0|"md5sum"}' fileA > fileB

结果输出文件B中只有一行,MS是把3行给加密成一个字符串了,怎么能对每一行分别做md5sum,最后输出3行呢?

论坛徽章:
0
2 [报告]
发表于 2010-04-26 17:22 |只看该作者
回复 1# yhou31


    [2]cat 2
A 00001
B 00002
C 00003
[2]
[2]
[2]
[2]cat 2 | md5sum
34c75e586fc7b78527f18cba1bc5de99  -
[2]awk '{print $0}' 2|md5sum
34c75e586fc7b78527f18cba1bc5de99  -
[2]awk '{print $0|"md5sum"}' 2  
34c75e586fc7b78527f18cba1bc5de99  -
[2]


这样看的是这个文件的md5码吧

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
3 [报告]
发表于 2010-04-26 17:27 |只看该作者

  1. while read line; do echo ${line}|md5sum; done < urfile
复制代码

论坛徽章:
0
4 [报告]
发表于 2010-04-27 11:25 |只看该作者
我想用awk来实现,怎么弄呢?(3楼的做法我知道的)

论坛徽章:
0
5 [报告]
发表于 2010-04-27 11:49 |只看该作者

  1. awk '{system("echo "$0"|md5sum")}'  fileA > fileB
复制代码

论坛徽章:
0
6 [报告]
发表于 2010-04-27 12:05 |只看该作者
我想用awk来实现,怎么弄呢?(3楼的做法我知道的)
yhou31 发表于 2010-04-27 11:25

那也只能用5楼的system了

论坛徽章:
0
7 [报告]
发表于 2010-04-27 12:31 |只看该作者
用sed 很容易吧

论坛徽章:
0
8 [报告]
发表于 2010-04-27 12:55 |只看该作者
那也只能用5楼的system了
xuledw 发表于 2010-04-27 12:05



    awk '{("echo "$0"| md5sum ")|getline a; print a}'  fileA.txt > fileB.txt

论坛徽章:
0
9 [报告]
发表于 2010-04-27 14:58 |只看该作者
Shell_HAT 发表于 2010-04-26 17:27



    我得出的结果是:
$ cat fileB
7a158407e89a18457f97286613484ca0  -
b12ab4645118ae942e58d48c11a0ff88  -
66103b737c883e4a0f47b27034b4f7a2  -

每行的最后怎么有个"-"这个符号?

我需要将最后这个符号去掉:
$awk '{system("echo "$0"|md5sum|awk '{print "$1"}'")}'  fileA > fileB

但是执行失败了。

$awk '{$0=system("echo "$0"|md5sum");print $1}'  fileA > fileB

也不行。

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
10 [报告]
发表于 2010-04-27 15:19 |只看该作者
回复 9# yhou31

  1. awk '{system("echo "$0"|md5sum|sed \"s/ .*//\"")}' fileA >fileB
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP