当前位置:  技术问答>linux和unix

求一批量查找替换脚本

    来源: 互联网  发布时间:2016-08-03

    本文导语:  有文件a.txt 1100,1234 15000,7890 文件b.txt this is a test 1100 aaa this is a test 11003 aaa other file 215000 ccc 现在有一批象b.txt一样的文件 要求在b同一行出现指定字符"test",并且出现a文件中第一列中的数据,替换成第二列的...

有文件a.txt
1100,1234
15000,7890

文件b.txt
this is a test 1100 aaa
this is a test 11003 aaa
other file 215000 ccc

现在有一批象b.txt一样的文件
要求在b同一行出现指定字符"test",并且出现a文件中第一列中的数据,替换成第二列的相应数据,要求全部匹配
替换后b.txt结果如下
this is a test 1234 aaa
this is a test 11003 aaa
other file 215000 ccc


|
awk 'BEGIN{FS="[ |,]"}NR==FNR{a[$1]=$2}NR>FNR{if($0~/test/ && a[$5]) $5=a[$5];print}' a.txt b.txt

|
由于我比较笨 所以写了个比较笨的 如果还没解决 你将就着用一下 要不好用跟我说

#!/bin/bash
file_a=a.txt  //你的a.txt文件,如果脚本和它不在一个目录,加上目录
file_b=b.txt  //你的b.txt文件,如果脚本和它不在一个目录,加上目录
file_c=c.txt  //你最终要得到的文件,如果也要叫b.txt的话,脚本执行完后,mv c.txt b.txt
target=test   //要匹配的字符串,比如你上面说的test
flag=0;
line_a=`cat "$file_a" | wc -l`
line=`grep -n "$target" $file_b | awk -F':' '{print $1}'`
for line_loop in `seq 1 $line_a`
do
    for line_b in $line
        do
              if [ $line_loop -eq $line_b ];then
                      after_target=`awk -F',' 'NR=='$line_b' {print $1}' $file_a`
                      to_target=`awk -F',' 'NR=='$line_b' {print $2}' $file_a`
                      result=`awk 'NR=='$line_b' {print $0}' $file_b | awk '{for(i=1;i

    
 
 

您可能感兴趣的文章:

  • vim怎么查找并替换 “[bx][si]”呢。。貌似是因为两个中括号连在一起查找不到。。
  • linux下如何实现文件内容得查找替换
  • 字符串中有汉字,怎么查找和替换???
  • 在多文件中批量查找替换
  • vi 查找替换字符串之前要求确认,如何确认? %s/regexp/replacement/g
  • 怎样用c的函数写出文本文件中的查找和替换功能?不会要重新写一边文件吧?
  • 如何对一个文件中的特定字符串进行查找,然后替换
  • Python 字符串操作实现代码(截取/替换/查找/分割)
  • 请教:如何在linux或者vim下处理这类文本文件的查找替换问题?
  • 如何使用vim在多个文件中进行字符串查找与替换?
  • 各位高手:java中查找字符串并替换用什么方法?
  • C#中怎样从指定字符串中查找并替换字符串?
  • 又一不错的应用-正则来查找替换字符串
  • Shell脚本学习指南之查找与替换介绍
  • java实现查找文本内容替换功能示例
  • shell 字符串操作(长度,查找,替换)详解
  • 求一小脚本,查找进程号然后kill掉
  • shell脚本:查找有执行权限的文件格式为普通的文本文档
  • 请教一个查找字符的脚本。急用!!
  • 在一类文件中查找特定字符脚本
  • 在指定目录查找指定后缀文件的shell脚本代码
  • shell 脚本查找文件并输出
  • Linux下查找后门程序 CentOS 查后门程序的shell脚本
  • 简单的Linux查找后门思路和shell脚本分享
  • python脚本实现查找webshell的方法
  • 查找目录下同名但不同后缀名文件的shell脚本代码
  • shell 脚本完成在目录或者文件中查找输入的内容,并且输出含有输入字符串的文件名称,但是得不到正确的结果。
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ Strings(字符串) 成员 rfind():查找最后一个与value相等的字符(逆向查找)
  • Linux查找包含指定文字的文件(linux查找指定文件)
  • C++ Maps 成员 find():查找一个元素
  • php顺序查找与二分查找实例
  • C++ MultiMaps 成员 find():查找元素
  • php顺序查找和二分查找示例
  • C++ Strings(字符串) 成员 find():在字符串中查找字符
  • 在unix查找某个目录下一小时前的生成的文件,怎么查找?find只能按天来查。
  • C++ Strings(字符串) 成员 find_first_of():查找第一个与value中的某值相等的字符
  • Linux下怎么查找指定文件大小的文件?如查找100MB以上的文件
  • C++ Strings(字符串) 成员 find_last_of():查找最后一个与value中的某值相等的字符
  • 还发一个查找文件的贴子,给一个相对目录USR0怎样用JAVA查找其下的文件
  • C++ Strings(字符串) 成员 find_first_not_of():查找第一个与value中的所有值都不相等的字符
  • java 折半查找法(二分查找)实例
  • C++ Strings(字符串) 成员 find_last_not_of():查找最后一个与value中的所有值都不相等的字符
  • php字符串查找 查找字符最后一次出现位置
  • Linux c++库boost unordered_set数据插入及查找代码举例
  • jquery 父页面查找iframe子页面内容、子页面查找父页面内容
  • HASH查找的程序实现及性能分析
  • 高分急求:UNIX环境下查找字符串的问题 (给出文件路径,和需要查找的字符串)工作急需,恳求各位高手帮忙!!!!
  • Linux c++库boost unordered_map数据插入及查找代码举例
  • find命令怎么用能够实现不递归查找子目录?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3