linux下批量文件内容提取

目录下有很多文件:-rw-r--r--1rootroot494May1202:03city_tianqi_201605100311.xml................... 目录下有很多文件:
-rw-r--r-- 1 root root 494 May 12 02:03 city_tianqi_201605100311.xml
............................
其中文件中含有下面信息
.................
......河北/石家庄..........
......河北/石家庄..........
......河北/保定.............
我想提取出所有文件中信息下面信息
120203_201605100311_河北/石家庄
120203_201605100311_河北/石家庄
120203_201605100311_河北/保定
也就是说提取所有文件的产生时间_文件名中的时间_文件中的城市信息,进行输出
展开
 我来答
xiangjuan314
2016-05-12 · TA获得超过3.3万个赞
知道大有可为答主
回答量:2.9万
采纳率:0%
帮助的人:2873万
展开全部
grep ingcn -rl /assign-path | xargs sed -i 's/ingcn/.ingcn/g'

sed -i 's/ingcn/.ingcn/g' `grep ingcn -rl /assign-path`
还有一种比较复杂的写法:
grep ingcn * -R | awk -F: '{print $1}' | sort | uniq | xargs sed -i 's/ingcn/.ingcn/g'
其中命令awk用于分割字符串、uniq对结果进行除重。
、网络上现成的资料
格式: sed -i s/查找字段/替换字段/g `grep 查找字段 -rl 路径`
linux sed 批量替换多个文件中的字符串
sed -i s/oldstring/newstring/g `grep oldstring -rl yourdir`
例如:替换/home下所有文件中的.111cn.为111cn.
sed -i s/.111cn./111cn./g `grep .111cn. -rl /home`
exp:sed -i s/shabi/$/g `grep shabi -rl ./`
2、自己额外附加
2.1 将文件1.txt内的文字garden替换成mirGarden
# sed -i s/garden/mirGarden/g
1.txt sed -i 很简单
2.2 将当前目录下的所有文件内的garden替换成mirGarden
## sed -i s/garden/mirGarden/g `ls` 其实也就是ls出多个文件名而已
追问
就我当前这个例子来写一个
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式