LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1588|回复: 23

把一个HTML文件用gawk分成从< 到 > 为一行, 应该怎么做?

[复制链接]
发表于 2004-4-14 11:53:04 | 显示全部楼层 |阅读模式
因为有时间会换行.


<img src="adsasdf.jpg"
border="0">

我想用awk 把"替换成空. 另外把两行并一行.
发表于 2004-4-14 11:57:01 | 显示全部楼层

回复: 把一个HTML文件用gawk分成从&lt; 到 &gt; 为一行, 应该怎么做?

最初由 longdas 发表
因为有时间会换行.


<img src="adsasdf.jpg"
border="0">

我想用awk 把"替换成空. 另外把两行并一行.

<img src="adsasdf.jpg" border="0">
想要这样嘛?
发表于 2004-4-14 12:40:46 | 显示全部楼层
  1. tr -d ' \n|"'
复制代码

用awk比较烦琐
发表于 2004-4-14 13:40:16 | 显示全部楼层
tr -d ' \n|"'
能够满足楼主要求么?
能不能解释一下这个|还有''里面的第一个空格什么意思
发表于 2004-4-14 13:55:07 | 显示全部楼层
最初由 qhgary 发表
tr -d ' \n|"'
能够满足楼主要求么?
能不能解释一下这个|还有''里面的第一个空格什么意思

/home/javalee#tr -d '\n|"' <file
<img src=adsasdf.jpg border=0>
-d是删除字符串中的回车符(\n)或者(|)双引号(")
对单字符的替换/删除,用tr就可以了,如果是比较复杂的文件,还是要用
sed或awk等工具
ps:\n前没有空格,也许是贴的是否的问题吧
发表于 2004-4-14 15:07:06 | 显示全部楼层
但是楼主的意思显然是有很多个这样的分行阿,如果只有一个也不用谢什么代码,手工就可以了
这样去掉所有的\n或者",那不是整个文件全部都变成一行了?
另外问一句tr是像awk那样,对文件的每行都实行后面的操作么?还是说后面的参数就是针对整个文件内容的?
谢谢
发表于 2004-4-14 15:46:31 | 显示全部楼层
<img src="adsasdf.jpg"
border="0">
dsfsdfsdfertwr
<img src="adsasdf.jpg"
border="0">
345gfd
etertert
<img src="adsasdf.jpg"
border="0">
s
<img src="adsasdf.jpg"
border="0">
3JSDJFJ;SJF;L
<img src="adsasdf.jpg"
border="0">
sdfsdf
<img src="adsasdf.jpg"
sdfsdf
border="0">
sfsdf
<img src="adsasdf.jpg"

也就是说,这样的文件怎么办? :ask....再好好想想 ;)
发表于 2004-4-14 15:49:40 | 显示全部楼层
是啊,肯定不会就1行要改阿,那手工就可以。而且"如果不在<>里面就不能去掉阿,楼主说的是html代码里面。
发表于 2004-4-14 16:17:12 | 显示全部楼层
发表于 2004-4-14 16:22:33 | 显示全部楼层
这些情况呢?
  1. <jfkdls> <kfldjf>
  2. jkdfd <kjfkdls> kfkd
  3. <kljfkd<jfkd>jk
  4. fldfd>
复制代码

是不是也要变成这样?
  1. <jfkdls>

  2. <kfldjf>
  3. jkdfd
  4. <kjfkdls>
  5. kfkd
  6. <kljfkd
  7. <jfkd>
  8. jk
  9. fldfd>
复制代码

也就是说每一对<>都要在单独的一行,即这一行必须以<开头以>结尾,是不是?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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