24小时热门版块排行榜    

查看: 800  |  回复: 3
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

Louis_PND

新虫 (初入文坛)

[求助] 【求助】linux shell下文件关联的取词替换

这段时间小弟在学一些Linux下的shell编程,发现这东西时而简单时而又想不到正确的方法。这里我想问下,利用shell脚本能否批处理完成以下操作:
有两个文件file1,file2.
file1中文本类似于:
    "本地视频"
    "本地音频"
    "图片浏览"
               ......
file2中文本类似于:
   本地视频        Video
   本地音频        Audio
   图片浏览        Picture
          ......
这时我能否实现对file1中每行的特定词进行特定的替换?比如搜索到file1中的"本地视频"与file2中第一行$1匹配,那就用file2中匹配行的$2(Video)替换file1中的"本地视频",然后依次往下搜索匹配、替换。。。
回复此楼
一步一个脚印
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

huycwork

金虫 (著名写手)

【答案】应助回帖

★ ★ ★
余泽成(金币+3): 谢谢参与应助! 2011-06-08 16:15:19
perl代码:
CODE:
#!I:/Perl/bin/perl -w
open F, " while(){
    /(\S+)\s+(\S+)/;
    $tab{$1} = $2;
}
open F, " while(){
    s/>"(.*)"\"$tab{$1}\"<"/e;
    print;
}
print "\n";

漩涡的中心有一块空地,空空的。
4楼2011-06-08 13:42:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 4 个回答

xioooli

金虫 (小有名气)

【答案】应助回帖

★ ★
余泽成(金币+2): 谢谢参与应助! 2011-06-08 16:14:36
cat file2|while read line; do key=$(awk '{print $1}' <<< "$line"; val=$(awk '{print $2}' <<< "$line"; sed -i "s|$key|$val|g" file1;done
2楼2011-06-07 22:42:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xioooli

金虫 (小有名气)

【答案】应助回帖

不好意思,忘了用code括起来
CODE:
cat file2|while read line; do key=$(awk '{print $1}' <<< "$line"); val=$(awk '{print $2}' <<< "$line"); sed -i "s|$key|$val|g" file1;done

3楼2011-06-07 22:43:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 能源材料化学课题组招收硕士研究生8-10名 +3 脱颖而出 2026-03-16 6/300 2026-03-17 21:19 by z1z2z3879
[考研] 梁成伟老师课题组欢迎你的加入 +8 一鸭鸭哟 2026-03-14 10/500 2026-03-17 15:07 by 一鸭鸭哟
[考研] 材料与化工304求B区调剂 +7 邱gl 2026-03-11 8/400 2026-03-17 09:36 by 努力学习赚彩礼
[考研] 11408 一志愿西电,277分求调剂 +3 zhouzhen654 2026-03-16 3/150 2026-03-17 07:03 by laoshidan
[考研] 机械专硕325,寻找调剂院校 +3 y9999 2026-03-15 5/250 2026-03-16 19:58 by y9999
[考研] 085600材料与化工 求调剂 +13 enenenhui 2026-03-13 14/700 2026-03-16 15:19 by 了了了了。。
[考研] 求老师收留调剂 +4 jiang姜66 2026-03-14 5/250 2026-03-15 20:11 by Winj1e
[考研] 中科大材料与化工319求调剂 +3 孟鑫材料 2026-03-14 3/150 2026-03-14 20:10 by ms629
[基金申请] 现在如何回避去年的某一个专家,不知道名字 +3 zk200107 2026-03-12 6/300 2026-03-14 17:13 by zk200107
[考研] 328求调剂 +3 5201314Lsy! 2026-03-13 6/300 2026-03-14 15:31 by hyswxzs
[考研] 一志愿哈工大材料324分求调剂 +5 闫旭东 2026-03-14 5/250 2026-03-14 14:53 by 木瓜膏
[考研] 266求调剂 +4 学员97LZgn 2026-03-13 4/200 2026-03-14 08:37 by zhukairuo
[考研] 材料与化工(0856)304求B区调剂 +6 邱gl 2026-03-12 7/350 2026-03-13 23:24 by 邱gl
[考研] 求调剂(材料与化工327) +4 爱吃香菜啦 2026-03-11 4/200 2026-03-13 22:11 by JourneyLucky
[考研] 290求调剂 +9 ADT 2026-03-11 9/450 2026-03-13 21:55 by JourneyLucky
[考研] 一志愿西南交大,材料专硕317求调剂 +5 lx8568 2026-03-11 5/250 2026-03-13 21:43 by peike
[考研] 工科调剂 +4 Jiang191123! 2026-03-11 4/200 2026-03-13 15:15 by Miko19
[考研] 070303一志愿西北大学学硕310找调剂 +3 d如愿上岸 2026-03-13 3/150 2026-03-13 10:43 by houyaoxu
[考研] 283求调剂,材料、化工皆可 +8 苏打水7777 2026-03-11 10/500 2026-03-13 09:06 by Linda Hu
[考研] 321求调剂(食品/专硕) +3 xc321 2026-03-12 6/300 2026-03-13 08:45 by xc321
信息提示
请填处理意见