免费注册 查看新帖 |

Chinaunix

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

[文本处理] 关于awk分隔符FS的一个疑问 [复制链接]

论坛徽章:
18
辰龙
日期:2014-05-21 21:01:4115-16赛季CBA联赛之深圳
日期:2016-12-23 13:51:3815-16赛季CBA联赛之北控
日期:2016-11-28 18:26:3815-16赛季CBA联赛之佛山
日期:2016-11-03 11:18:5815-16赛季CBA联赛之辽宁
日期:2016-07-10 16:09:4115-16赛季CBA联赛之江苏
日期:2016-02-20 23:09:202015亚冠之塔什干棉农
日期:2015-08-17 19:49:492015年亚洲杯之日本
日期:2015-04-30 01:24:342015年亚洲杯之约旦
日期:2015-04-01 00:37:182015年亚洲杯之沙特阿拉伯
日期:2015-03-02 15:55:40处女座
日期:2014-05-25 10:34:0020周年集字徽章-年
日期:2023-04-23 11:17:52
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-06-08 07:03 |只看该作者 |倒序浏览
5可用积分
大家好!
我有一个问题向大家请教。
有一个字符串/home/box/.z/.upgrade,我想得到两个/.之间的z,也就是以/.为分隔符,但是awk会把.正则匹配为任意字符。
[box@5f72b64c650c:~/.z/.upgrade]$ pwd
/home/box/.z/.upgrade
[box@5f72b64c650c:~/.z/.upgrade]$ pwd|awk -F"/." '{print$2}'
ome
[box@5f72b64c650c:~/.z/.upgrade]$ pwd|awk -F'/.' '{print$2}'
ome
[box@5f72b64c650c:~/.z/.upgrade]$ pwd|awk -F"/\." '{print$2}'
awk: warning: escape sequence `\.' treated as plain `.'
ome
[box@5f72b64c650c:~/.z/.upgrade]$ pwd|awk -F'[/.]+' '{print$2}'
home
[box@5f72b64c650c:~/.z/.upgrade]$ pwd|grep -Po "(?<=/\.).*(?=/\.)"
z
[box@5f72b64c650c:~/.z/.upgrade]$
请问如果用awk的话应该怎么设置分隔符FS呢?

论坛徽章:
28
15-16赛季CBA联赛之八一
日期:2016-02-22 19:10:4215-16赛季CBA联赛之深圳
日期:2016-12-01 10:34:0415-16赛季CBA联赛之新疆
日期:2016-12-07 10:24:2915-16赛季CBA联赛之同曦
日期:2016-12-15 12:06:43CU十四周年纪念徽章
日期:2016-12-18 13:03:4415-16赛季CBA联赛之吉林
日期:2017-01-03 15:52:2515-16赛季CBA联赛之辽宁
日期:2017-01-04 14:58:2415-16赛季CBA联赛之辽宁
日期:2017-01-15 09:42:512016科比退役纪念章
日期:2017-02-06 17:21:50黑曼巴
日期:2017-02-10 15:46:1215-16赛季CBA联赛之上海
日期:2017-03-18 10:14:5415-16赛季CBA联赛之青岛
日期:2017-03-18 22:00:44
2 [报告]
发表于 2016-06-08 07:03 |只看该作者
本帖最后由 moperyblue 于 2016-06-08 10:38 编辑
  1. echo '/home/box/.z/.upgrade'|awk -F'/\\.' '{print $2}'
  2. z
  3. echo '/home/box/.z/.upgrade'|awk -F'/[.]' '{print $2}'
  4. z
  5. echo '/home/box/.z/.upgrade'|awk -F/[.] '{print $2}'  
  6. z
  7. echo '/home/box/.z/.upgrade'|awk -F"/[.]" '{print $2}'
  8. z

  9. echo '/home/box/.z/.upgrade'|sed '/\n/P;s#/\.#\n#g;D'
  10. z
  11. echo '/home/box/.z/.upgrade'|sed 'ta;s#/\.#\n#;D;:a;s#/\..*##'
  12. z
复制代码

求职 : 技术支持/维
论坛徽章:
0
3 [报告]
发表于 2016-06-08 07:12 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
2
luobin
日期:2016-06-17 17:46:36lufei
日期:2016-06-17 17:49:16
4 [报告]
发表于 2016-06-08 09:04 |只看该作者
转译啊,\.  

论坛徽章:
10
天蝎座
日期:2013-09-22 22:32:23程序设计版块每日发帖之星
日期:2016-08-07 06:20:00lufei
日期:2016-06-17 17:38:40程序设计版块每日发帖之星
日期:2016-06-12 06:20:002016科比退役纪念章
日期:2016-05-31 15:47:20CU十四周年纪念徽章
日期:2016-05-27 12:24:562015年亚洲杯之阿曼
日期:2015-05-03 21:01:352015年辞旧岁徽章
日期:2015-03-03 16:54:15天蝎座
日期:2013-10-20 21:05:24程序设计版块每日发帖之星
日期:2016-08-11 06:20:00
5 [报告]
发表于 2016-06-08 09:23 |只看该作者
回复 1# bikkuri
不同版本还是有点差异的

li@ubuntu:~/shell/python$ echo '/home/box/.z/.upgrade' | awk -F"/\." '{print$2}'
z

li@ubuntu:~/shell/python$ echo '/home/box/.z/.upgrade' | awk -F"/\\." '{print$2}'
z

li@ubuntu:~/shell/python$ echo '/home/box/.z/.upgrade' | awk -F"/\\\." '{print$2}'
z


li@ubuntu:~/shell/python$ echo '/home/box/.z/.upgrade' | awk -F'/\.' '{print$2}'
z

li@ubuntu:~/shell/python$ echo '/home/box/.z/.upgrade' | awk -F'/\\.' '{print$2}'
z


   

论坛徽章:
28
15-16赛季CBA联赛之八一
日期:2016-02-22 19:10:4215-16赛季CBA联赛之深圳
日期:2016-12-01 10:34:0415-16赛季CBA联赛之新疆
日期:2016-12-07 10:24:2915-16赛季CBA联赛之同曦
日期:2016-12-15 12:06:43CU十四周年纪念徽章
日期:2016-12-18 13:03:4415-16赛季CBA联赛之吉林
日期:2017-01-03 15:52:2515-16赛季CBA联赛之辽宁
日期:2017-01-04 14:58:2415-16赛季CBA联赛之辽宁
日期:2017-01-15 09:42:512016科比退役纪念章
日期:2017-02-06 17:21:50黑曼巴
日期:2017-02-10 15:46:1215-16赛季CBA联赛之上海
日期:2017-03-18 10:14:5415-16赛季CBA联赛之青岛
日期:2017-03-18 22:00:44
6 [报告]
发表于 2016-06-08 10:05 |只看该作者
本帖最后由 moperyblue 于 2016-06-08 10:41 编辑
  1. .
复制代码

论坛徽章:
145
技术图书徽章
日期:2013-10-01 15:32:13戌狗
日期:2013-10-25 13:31:35金牛座
日期:2013-11-04 16:22:07子鼠
日期:2013-11-18 18:48:57白羊座
日期:2013-11-29 10:09:11狮子座
日期:2013-12-12 09:57:42白羊座
日期:2013-12-24 16:24:46辰龙
日期:2014-01-08 15:26:12技术图书徽章
日期:2014-01-17 13:24:40巳蛇
日期:2014-02-18 14:32:59未羊
日期:2014-02-20 14:12:13白羊座
日期:2014-02-26 12:06:59
7 [报告]
发表于 2016-06-08 10:07 |只看该作者
回复 1# bikkuri

try this way ...

$ echo '/home/box/.z/.upgrade' | awk -F'/[.]' '{print $2}'
z

   

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
8 [报告]
发表于 2016-06-08 10:09 |只看该作者
-F '/[.]'  或 -F '/\\.'

论坛徽章:
145
技术图书徽章
日期:2013-10-01 15:32:13戌狗
日期:2013-10-25 13:31:35金牛座
日期:2013-11-04 16:22:07子鼠
日期:2013-11-18 18:48:57白羊座
日期:2013-11-29 10:09:11狮子座
日期:2013-12-12 09:57:42白羊座
日期:2013-12-24 16:24:46辰龙
日期:2014-01-08 15:26:12技术图书徽章
日期:2014-01-17 13:24:40巳蛇
日期:2014-02-18 14:32:59未羊
日期:2014-02-20 14:12:13白羊座
日期:2014-02-26 12:06:59
9 [报告]
发表于 2016-06-08 10:11 |只看该作者
本帖最后由 jason680 于 2016-06-08 11:07 编辑

(网络问题,重发.....)

   

论坛徽章:
145
技术图书徽章
日期:2013-10-01 15:32:13戌狗
日期:2013-10-25 13:31:35金牛座
日期:2013-11-04 16:22:07子鼠
日期:2013-11-18 18:48:57白羊座
日期:2013-11-29 10:09:11狮子座
日期:2013-12-12 09:57:42白羊座
日期:2013-12-24 16:24:46辰龙
日期:2014-01-08 15:26:12技术图书徽章
日期:2014-01-17 13:24:40巳蛇
日期:2014-02-18 14:32:59未羊
日期:2014-02-20 14:12:13白羊座
日期:2014-02-26 12:06:59
10 [报告]
发表于 2016-06-08 10:23 |只看该作者
本帖最后由 jason680 于 2016-06-08 11:06 编辑

(网络问题,重发.....)
   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP