免费注册 查看新帖 |

Chinaunix

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

awk print 问题。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-04-10 17:08 |只看该作者 |倒序浏览
用 sed
sed -e '' /bin/ls >111
md5 检查 111 与 ls 完全一样,没有任何变化。

awk '1' /bin/ls  >111
md5 检查 111 发现已经改变了。

我想 printf 肯定吃控制字符了 能不能让 awk  实现类似 sed 的功能,符合条件的处理,不符合条件的,直接输出,别让那个 print 来捣乱。

我测试用 binmode md5也变化了。

论坛徽章:
0
2 [报告]
发表于 2009-04-10 17:13 |只看该作者

回复 #1 xinyv 的帖子

我晕了,看不懂你说的
你的 awk '1' /bin/ls  结果是什么?

论坛徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亚冠之浦和红钻
日期:2015-06-23 19:10:532015亚冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16赛季CBA联赛之山东
日期:2016-01-31 18:25:0515-16赛季CBA联赛之四川
日期:2016-02-16 16:08:30程序设计版块每日发帖之星
日期:2016-06-29 06:20:002017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之佛山
日期:2017-02-27 20:41:19
3 [报告]
发表于 2009-04-10 17:17 |只看该作者
估计是在文件尾多了个\n

论坛徽章:
0
4 [报告]
发表于 2009-04-10 17:18 |只看该作者
[root@Mylinux tmp]# ls -l /bin/ls
-rwxr-xr-x 1 root root 85296 2007-12-14 /bin/ls
[root@Mylinux tmp]# awk '1' /bin/ls >11
[root@Mylinux tmp]# ls -l 11
-rw-r--r-- 1 root root 85297 03-27 22:55 11
[root@Mylinux tmp]# file /bin/ls
/bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped
[root@Mylinux tmp]# file 11
11: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped

字节数已经变了,把2进制文件当文本文件处理的结果?

论坛徽章:
0
5 [报告]
发表于 2009-04-10 17:19 |只看该作者
发现这个新文件照样可以执行

论坛徽章:
0
6 [报告]
发表于 2009-04-10 17:25 |只看该作者
原帖由 ywlscpl 于 2009-4-10 17:19 发表
发现这个新文件照样可以执行


这个是可以,但我提取 tar 的时候就出错了。

论坛徽章:
0
7 [报告]
发表于 2009-04-10 17:26 |只看该作者
原帖由 waker 于 2009-4-10 17:17 发表
估计是在文件尾多了个\n


awk '{printf $0}' /bin/ls >111

也不行,直接出错。

论坛徽章:
0
8 [报告]
发表于 2009-04-10 17:28 |只看该作者
楼主能具体讲讲你的例子吗?一个执行文件为什么要用awk处理一下?

论坛徽章:
0
9 [报告]
发表于 2009-04-10 17:33 |只看该作者
举个例子吧 :
cat >file1<<!
12345
67890
abcde
!
tar cf a.tar ./file1

cat >a.sh<<!
#!/bin/bash
echo 12345
echo 67890
exit
!

cat a.tar >>a.sh

然后在执行的时候提取 a.tar  这个功能用 tail sed 都能很好的实现,但awk不行,我就是想 看看 awk 咋搞。

论坛徽章:
0
10 [报告]
发表于 2009-04-10 17:33 |只看该作者
看错,试下awk
果然是变了

[ 本帖最后由 justlooks 于 2009-4-10 17:39 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP