Chinaunix

标题: sed /\n/ --==null [打印本页]

作者: 1cpuer    时间: 2019-03-23 21:55
标题: sed /\n/ --==null
#,; :{23395}: /mnt/i/je-d/sou-d 2019-03-23 21:58:26 1553349506
#.: echo -e "1\n2\n3\nx" | sed 's/\n/&--/g'
1
2
3
x



作者: jzsjm1002    时间: 2019-03-23 23:10
本帖最后由 jzsjm1002 于 2019-03-23 23:13 编辑
  1. [root@vh100 mnt]# echo -e "1\n2\n3\nx" | sedsed -d 's/\n/&--/g'
  2. PATT:1$                     # 模式空间为 1
  3. HOLD:$
  4. COMM:s/\n/&--/g             # <-- 匹配  \n  (匹配失败)
  5. PATT:1$
  6. HOLD:$
  7. 1                       
  8. PATT:2$                     # 模式空间为 2
  9. HOLD:$
  10. COMM:s/\n/&--/g             # <-- 匹配  \n  (匹配失败)
  11. PATT:2$
  12. HOLD:$
  13. 2
  14. PATT:3$                     # 模式空间为 3
  15. HOLD:$
  16. COMM:s/\n/&--/g             # <-- 匹配  \n  (匹配失败)
  17. PATT:3$
  18. HOLD:$
  19. 3
  20. PATT:x$                     # 模式空间为 x
  21. HOLD:$
  22. COMM:s/\n/&--/g             # <-- 匹配  \n  (匹配失败)
  23. PATT:x$
  24. HOLD:$
  25. x

  26. [root@vh100 mnt]# echo -e "1\n2\n3\nx" | sedsed -d ':a;N;$!ba;s/\n/&--/g'
  27. PATT:1$
  28. HOLD:$
  29. COMM::a
  30. COMM:N
  31. PATT:1\n2$
  32. HOLD:$
  33. COMM:$ !b a
  34. COMM:N
  35. PATT:1\n2\n3$
  36. HOLD:$
  37. COMM:$ !b a
  38. COMM:N
  39. PATT:1\n2\n3\nx$            # 将首行和尾行拼在一起了
  40. HOLD:$
  41. COMM:$ !b a
  42. COMM:s/\n/&--/g             # 匹配成功 进行替换               
  43. PATT:1\n--2\n--3\n--x$
  44. HOLD:$
  45. 1
  46. --2
  47. --3
  48. --x
复制代码


作者: 1cpuer    时间: 2019-03-24 08:37
COM: 后面字符淡黄色看不见
作者: 1cpuer    时间: 2019-03-24 08:49
本帖最后由 1cpuer 于 2019-03-24 08:54 编辑

回复 2# jzsjm1002

力作啊
https://blog.csdn.net/hello_hwc/article/details/40118129
上文也提及合行,当时没在意?






欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2