linux如何利用AWK或者sed提取文件指定内容

怎么才能将这个文件里的URL地址和email提取出来,并保存到一个文件里

Contacting address: Middle-section of Nan'er Huan Road, Xi’an, Shaanxi, P.R. China
Chang’an University
Zip code: 710064
Tel: 0086-29-82338114
Fax: 0086-29-82338114
E-mail: admin@chd.edu.cn
Web site: http://www.chd.edu.cn

Contacting address: Xianning West Road, Xi’an, Shaanxi, P.R. China
Xi'an Jiaotong University
Zip code: 710049
Tel: 0086-29-82668888
Fax: 0086-29-82668888
E-mail: admin@xjtu.edu.cn
Web site: http://www.xjtu.edu.cn

Contacting address: No.2 South Taibai Road, Xi’an, Shaanxi, P.R. China
Xidian University
Zip code: 710071
Tel: 0086-29-88202212
Fax: 0086-29-88202212
E-mail: admin@xidian.edu.cn
Web site: http://www.xidian.edu.cn

谢谢各位大佬啦

2个回答

cat 你的数据文件名 | awk '/^(E-mail|Web site)/{gsub(/^\s*E-mail:\s*/, "");gsub(/^Web site:\s*/, "");print $0}

jiajia@zhedan-Lenovo-B470:~/shdir$ cat data.txt
Contacting address: Middle-section of Nan'er Huan Road, Xi’an, Shaanxi, P.R. China
Chang’an University
Zip code: 710064
Tel: 0086-29-82338114
Fax: 0086-29-82338114
E-mail: admin@chd.edu.cn
Web site: http://www.chd.edu.cn

Contacting address: Xianning West Road, Xi’an, Shaanxi, P.R. China
Xi'an Jiaotong University
Zip code: 710049
Tel: 0086-29-82668888
Fax: 0086-29-82668888
E-mail: admin@xjtu.edu.cn
Web site: http://www.xjtu.edu.cn

Contacting address: No.2 South Taibai Road, Xi’an, Shaanxi, P.R. China
Xidian University
Zip code: 710071
Tel: 0086-29-88202212
Fax: 0086-29-88202212
E-mail: admin@xidian.edu.cn
Web site: http://www.xidian.edu.cn
jiajia@zhedan-Lenovo-B470:~/shdir$ cat data.txt | awk '/^(E-mail|Web site)/{gsub(/^\s*E-mail:\s*/, "");gsub(/^Web site:\s*/, "");print $0}'
admin@chd.edu.cn
http://www.chd.edu.cn
admin@xjtu.edu.cn
http://www.xjtu.edu.cn
admin@xidian.edu.cn
http://www.xidian.edu.cn
jiajia@zhedan-Lenovo-B470:~/shdir$

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Python+OpenCV计算机视觉

Python+OpenCV计算机视觉

sed命令和awk命令练习

假设文件file.txt的内容如下所示. 1 This is the first line. 2 Hello, Everybody! 3 192.168.1.1 www.suda.edu.cn 4 lijunhui:x:504:504::/home/lijunhui:/bin/bash 写出如下两条命令的运行结果 : (1) sed 's/suda//g' file.txt (2) awk 'NR==2, NR==3 {print $1, $3}' file.txt

Linux 提取文件中指定列数的字符串

![图片说明](https://img-ask.csdn.net/upload/201911/27/1574866245_787769.jpg) 我的log文件内容如上,对log文件做如下操作: ``` [tyy@root] grep -i "run_" real.log | awk '{print $5, $6}' ``` 输出内容为 ``` [tyy@root] file number file number file number ``` 56740在log文件里显示的是从36列到40列(每个字符和空格都算一列)我以为这样可以输出36列到40列,也就是我想要的5开头的数字, ``` [tyy@root] grep -i "run_" real.log | awk '{print $36, $40}' ``` 但其实awk print $ 列是按一个字符串算的,一个字符串算作一列,就像上面的输出一样。所以$36,$40 输出的就是一些空格。 现在我想提取文件里的数字,5开头的5位,不要00,请问该如何做?PS:有很多这种log文件,所以不是直接删掉其他的,留下数字就行。 跪谢各位大佬!!

linux AWK 怎么对比两个文件,输出

两个文件 F1 和F2 ,f1每一行:UserID::MovieID ;f2是UserID::MovieID 怎么把两个文件里面相同的USERID 升序输出到另一个文件

awk比对两文件相同部分

有这样两个文件 ``` % cat file1 1 -3 -5 8 7 6 9 -10 12 2 -4 11 -13 14 20 -21 22 19 % cat file2 a 1 13 b 2 15 c 3 13 d 4 16 e 5 20 f 6 16 g 7 14 h 8 14 i 9 16 j 10 26 k 11 34 l 12 25 m 13 6 n 14 5 o 15 1 p 16 12 ``` file2文件第二列为id,第三列为该id对应长度,file1文件中每一行由file2文件中的id构成,计算file1前三行的长度。其中file1中带负号的id要变成正数,再去file1中找相同的id。这两个文件只是数据中的一部分,请问大神们,用awk如何完成呢?这个各种循环实在是不太会弄了。

awk 或sed 或rename 批量重命名文件,均告失败!

如: 1 Ch6 Lect8a 110912.en.srt 2 Ch6 Lect8b 110913.en.srt 中的 ".en"去掉,分别重命名为: 1 Ch6 Lect8a 110912.srt 2 Ch6 Lect8b 110913.srt 在win7+cygwin的终端下: 我试了几种方法 1. for file in `ls ./*.en.srt -1` #-1,每行只有一个文件 do echo "$file" mv "$file" `echo "$file"|sed 's/\.en//g'` #注意这里有倒引号 done 2. find ./ -name '*.en.srt'|awk '{print $0;a=$0;sub(/\.en/,"",$0); mv a $0}'|bash 3.rename 's/\.en//g' *.srt 三种方法均失败,因为文件名中有空格,无奈之下,我用python写了脚本,完成了我的任务,但是并不甘心,难道linux命令无法处理小小的空格?请高手指点迷津!! 希望有人能够找出我错误的原因。 可以产生一个文件做测试: touch "1 Ch6 Lect8a 110912.en.srt" "2 Ch7 Lect8a 110912.en.srt"

如何使用awk提取匹配行下几行,行数不定但要大于一行

如何使用awk提取匹配行下几行,或者sed也行 比如一个文件 a 1 2 3 4 b a b c d 5 6 7 8 9 10 11 12 c e f g h 5 6 7 8 d i j k l 把只有一个字段下面的多于一行的内容提取出来 即输出是 a b c d 5 6 7 8 9 10 11 12 e f g h 5 6 7 8 感谢解答!

Linux中awk工具关于if语句的问题

刚开始看awk,看到if语句,于是自己写了一个很简单的测试 awk ' {if(1>0){printf "helloworld\n"}} 然后我发现,敲完这个命令就一直没有输出,类似于进入到死循环的命令那种感觉。。。求大神指点是怎么回事。

linux shell下,如何通过awk sed进行字符串处理

__ZN11didimap_eng12CMapActivity16IsCityHasTrafficEPKt,如何通过awk sed获取CMapActivity和IsCityHasTraffic

linux awk 变量赋值和比较

请问前辈一下三句有什么不同 1. awk -F: 'BEGIN{sx=3199; print sx} {if($3==3199) print $1} END{print "End"}' passwd 2. sx=3199 awk -F: 'BEGIN{print $sx} {if($3==$sx) print $1} END{print "End"}' passwd 3. awk -F: 'BEGIN{sx=3199; print sx} {if($3==sx) print $1} END{print "End"}' passwd 1 输出 3199 nscc3199 End 2 输出 (空一行) (空一行) End 3 输出 3199 (空一行) End 为什么呀?大神,各位大神指导一下,解释一下原因。因为我以为这3句是同样的结果才对!!!

AWK怎么检查文件1的某一列在文件2中,并输出这一列

比如文件1 name count a 2 a 3 a 5 b 3 c 4 d 5 e 6 f 2 g 2 h 3 k 2 文件2 name a g k 输出 name count a 2 a 3 a 5 g 2 k 2 因为这些都是出现在文件2里面的

Linux,用awk命令分割一行字符串

<dnhcgmd/hsxhkfnf/dgfnvih%28sjgnjshd%2xhhf8mf> 比如我想提取第二个/和%28中间夹的一串字符 可以用什么命令或者函数完成

关于awk对文件进行多次处理的问题

我需要对一个文件进行多次处理,第一次要扫描整个文件提取关键字,第二次再次扫描整个文件,根据关键字来替换相应内容。但是,awk脚本不是把文件扫描一次就结束了吗?这个该怎么处理?

利用awk,对.gff文件进行分析,首先排序染色体顺序排序,然后同一个染色体内按照mRNA的起始位置排序,要求该mRNA的cds相对于mRNA位置不变

请问大神解答awk编程的疑惑,题干如下:利用awk,对.gff文件进行分析,首先排序染色体顺序排序,然后同一个染色体内按照mRNA的起始位置排序,要求该mRNA的cds相对于mRNA位置不变。

awk怎么将自定义匹配的结果传给变量?

比如 ```shell str="abc d:aaa, timestamp: dwadwa d:bbb, timestamp: rererere d:ccc, timestamp: " ``` 怎么使用awk提取最终内容为一行: aaa, bbb, ccc 我知道在正则中用 ()可以将想要保留的内容保留,然后在$1 表示这个内容,但是在awk中似乎无效。 我的尝试: awk '{sub(/.+d:(\w+).+/n/,$1); print }' 肯定是报错了,或者有什么别的办法可以实现这个功能也行,但是最好是用awk实现,多谢了~

Perl、 Python、 AWK 和 sed 之间有什么区别? [打烊]

<div class="post-text" itemprop="text"> <p>just want to know what are the main differences among them? and the power of each language (where it's better to use it).</p> <p><strong>Edit:</strong> it's not "vs." like topic, just information.</p> </div> <p>转载于:https://stackoverflow.com/questions/366980/what-are-the-differences-between-perl-python-awk-and-sed</p>

利用sed和awk将列数据通过关键字转换为多列

将数据 4 00000080AB34 5 00000080AB35 5 00000080AB36 6 00000080AB37 4 00000080AB3A 180 ? 9 00000080AA0C 10 00000080AA0E 4 00000080AA0F 1 00000080AA10 5 00000080AA12 194 ? 9 00000080AA0C 5 00000080AA0E 5 00000080AA0F 7 00000080AA10 2 00000080AA12 200 ? 转变为 4 00000080AB34 9 00000080AA0C 9 00000080AA0C 5 00000080AB35 10 00000080AA0E 5 00000080AA0E 5 00000080AB36 4 00000080AA0F 5 00000080AA0F 6 00000080AB37 1 00000080AA10 7 00000080AA10 4 00000080AB3A 5 00000080AA12 2 00000080AA12 180 194 200 ? ? ?

linux awk命令处理字符串中反斜杠问题

文件input.txt中有以下数据: line1\ line2 line3 cat input.txt | while read line do echo $line | awk '{print $1}' done 输出结果为: line1line2 line3 预期的输出结果为: line1\ line2 line3 AWK如何处理字符串中包含转义字符的问题?

awk怎么提取匹配数组元素的行

两个文件,前一个文件每行的$1为数组的下标 即a[i]=$1;i++ 读取下一个文件时,如何提取$1 ~ /a[i]/的行,匹配的时候总是匹配字符串a[i],并不是匹配a[i]的值$1怎么办

awk 处理文本以指定字符切割后的列为单位

数据格式: ffff | cdcd | fdfd |fdfd | ssfd| 2020-02-02 09:00:00 以“|” 分割为一列 分割后的列值前后包含空格了 想要去除前后的空行, 最后想要的格式为 如下: fff|cdcd|fdfd|fdfd|ssfd|2020-02-02 09:00:00

2019 Python开发者日-培训

2019 Python开发者日-培训

150讲轻松搞定Python网络爬虫

150讲轻松搞定Python网络爬虫

设计模式(JAVA语言实现)--20种设计模式附带源码

设计模式(JAVA语言实现)--20种设计模式附带源码

YOLOv3目标检测实战:训练自己的数据集

YOLOv3目标检测实战:训练自己的数据集

java后台+微信小程序 实现完整的点餐系统

java后台+微信小程序 实现完整的点餐系统

三个项目玩转深度学习(附1G源码)

三个项目玩转深度学习(附1G源码)

初级玩转Linux+Ubuntu(嵌入式开发基础课程)

初级玩转Linux+Ubuntu(嵌入式开发基础课程)

2019 AI开发者大会

2019 AI开发者大会

玩转Linux:常用命令实例指南

玩转Linux:常用命令实例指南

一学即懂的计算机视觉(第一季)

一学即懂的计算机视觉(第一季)

4小时玩转微信小程序——基础入门与微信支付实战

4小时玩转微信小程序——基础入门与微信支付实战

Git 实用技巧

Git 实用技巧

Python数据清洗实战入门

Python数据清洗实战入门

使用TensorFlow+keras快速构建图像分类模型

使用TensorFlow+keras快速构建图像分类模型

实用主义学Python(小白也容易上手的Python实用案例)

实用主义学Python(小白也容易上手的Python实用案例)

程序员的算法通关课:知己知彼(第一季)

程序员的算法通关课:知己知彼(第一季)

MySQL数据库从入门到实战应用

MySQL数据库从入门到实战应用

机器学习初学者必会的案例精讲

机器学习初学者必会的案例精讲

手把手实现Java图书管理系统(附源码)

手把手实现Java图书管理系统(附源码)

极简JAVA学习营第四期(报名以后加助教微信:eduxy-1)

极简JAVA学习营第四期(报名以后加助教微信:eduxy-1)

.net core快速开发框架

.net core快速开发框架

玩转Python-Python3基础入门

玩转Python-Python3基础入门

Python数据挖掘简易入门

Python数据挖掘简易入门

微信公众平台开发入门

微信公众平台开发入门

程序员的兼职技能课

程序员的兼职技能课

Windows版YOLOv4目标检测实战:训练自己的数据集

Windows版YOLOv4目标检测实战:训练自己的数据集

HoloLens2开发入门教程

HoloLens2开发入门教程

微信小程序开发实战

微信小程序开发实战

Java8零基础入门视频教程

Java8零基础入门视频教程

相关热词 c#树形选择 c#中类图的使用方法 c# 传参 调用exe c# 怎么定义方法 c# 修改本地时间 c#前台怎么读取资源文件 c# xml转list c#实现框选截图 m*m乘法表c# c# 乘法99表
立即提问