24小时热门版块排行榜    

查看: 1430  |  回复: 5

meatball1982

铜虫 (小有名气)

[求助] 用shell或awk按要求提取数据

大家好。
我有一个原始文件(original.txt),三个index文件(ind_1.txt, ind_2.txt, ind_3.txt)。
我希望通过三个index文件,将original.txt文件中的参数写入到tar.txt中。
对于original,
如果第一列为数字,则将第二个"|"后的数字3(3 .034中间是有空格的)给tar.txt.然后根据ind_1.txt 中的序号,在1到221这141个数中的第33,第103,第140,第120个给tar.txt
当出现下一个第一列为数据时,把193 给tar,然后按ind_2.txt 提取数据。下同。
要求,
01.用shell和awk等脚本来实现。
02.要有注释以及明确的求解思路。

original.txt如下
CODE:
  1 | 141  0.043 |      3 .034 |      1      2      3      4      5      6     10
    |           |             |     11     12     14     15     16     17     18
    |           |             |     19     20     21     25     26     27     29
    |           |             |     30     31     32     33     34     40     41
    |           |             |     42     44     45     46     47     49     50
    |           |             |     51     55     57     59     60     61     62
    |           |             |     63     65     70     71     72     74     75
    |           |             |     76     77     78     80     81     83     85
    |           |             |     86     87     89     90     91     92     93
    |           |             |     94     95     96    100    101    102    104
    |           |             |    105    106    107    108    109    110    113
    |           |             |    115    116    117    119    120    121    123
    |           |             |    125    128    131    132    134    135    136
    |           |             |    137    138    140    143    146    147    149
    |           |             |    150    151    152    155    158    161    162
    |           |             |    164    165    166    167    168    169    170
    |           |             |    173    177    179    180    181    182    183
    |           |             |    184    185    188    191    192    194    195
    |           |             |    196    197    198    199    200    203    206
    |           |             |    209    210    211    212    213    214    218
    |           |             |    221
  2 |  35  0.035 |    193 .026 |      8      9     13     23     24     39     53
    |           |             |     54     58     68     69     84     88     99
    |           |             |    103    114    118    129    130    133    144
    |           |             |    145    148    159    160    163    175    178
    |           |             |    189    190    193    204    205    208    219
  3 |  12  0.043 |    124 .034 |     35     48     56     64     79     98    122
    |           |             |    124    139    153    154    176

ind_1.txt
CODE:
33        103        140        120

ind_2.txt
CODE:
12        21        19

ind_3.txt
CODE:
8        2       

tar.txt
CODE:
3
47
158
218
184
193
84
144
130
124
124
48

回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : post_question.zip
  • 2013-12-16 21:11:52, 1.8 K

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

唉。还是学吧。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jerkwin

专家顾问 (正式写手)

你搞得这么复杂, 不知要做哪样
先自己好好设计下思路吧
否则弄出来了也是个dirty work
2楼2013-12-16 23:09:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

meatball1982

铜虫 (小有名气)

引用回帖:
2楼: Originally posted by jerkwin at 2013-12-16 23:09:19
你搞得这么复杂, 不知要做哪样
先自己好好设计下思路吧
否则弄出来了也是个dirty work

谢谢jerkwin的回复。
请问,我是没说清楚吗?
我有ind,从ind里对应到origina.txt中取数。
还是我例子说的不对?
唉。还是学吧。
3楼2013-12-17 09:13:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jerkwin

专家顾问 (正式写手)

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
meatball1982(jjdg代发): 金币+20, 谢谢 2014-02-04 11:50:12
引用回帖:
3楼: Originally posted by meatball1982 at 2013-12-17 09:13:19
谢谢jerkwin的回复。
请问,我是没说清楚吗?
我有ind,从ind里对应到origina.txt中取数。
还是我例子说的不对?...

你说得算清楚
按你说的, 写脚本也可以实现
但是我还是建议你从原始文件开始, 处理时尽量少用中间文件
多一个步骤, 多一个文件, 出错的几率就大很多
写程序, 说到底就是个问题精炼, 逻辑锻炼过程
如果一直都按同样的方式来做, 写得再多进步也不大
DO NOT REPEAT YOURSELF
4楼2013-12-17 09:24:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

meatball1982

铜虫 (小有名气)

引用回帖:
4楼: Originally posted by jerkwin at 2013-12-17 09:24:25
你说得算清楚
按你说的, 写脚本也可以实现
但是我还是建议你从原始文件开始, 处理时尽量少用中间文件
多一个步骤, 多一个文件, 出错的几率就大很多
写程序, 说到底就是个问题精炼, 逻辑锻炼过程
如果一直都按 ...

非常感谢jerkwin。
您说的很有道理。我自己再尝试写一下。
下一次会把写作过程中更加具体的问题提出来。

关于“DO NOT REPEAT YOURSELF”。
非常同意。
再次感谢。
唉。还是学吧。
5楼2013-12-17 09:35:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

meatball1982

铜虫 (小有名气)

引用回帖:
4楼: Originally posted by jerkwin at 2013-12-17 09:24:25
你说得算清楚
按你说的, 写脚本也可以实现
但是我还是建议你从原始文件开始, 处理时尽量少用中间文件
多一个步骤, 多一个文件, 出错的几率就大很多
写程序, 说到底就是个问题精炼, 逻辑锻炼过程
如果一直都按 ...

非常感谢jerkwin。
您说的很有道理。我自己再尝试写一下。
下一次会把写作过程中更加具体的问题提出来。

关于“DO NOT REPEAT YOURSELF”。
非常同意。
再次感谢。
唉。还是学吧。
6楼2013-12-17 09:36:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 meatball1982 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 2026国自然函评费到账 +13 羊腰板 2026-08-21 13/650 2026-08-23 09:25 by lfy8008
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 2JOx3r2CYEgw 2026-08-22 5/250 2026-08-23 07:41 by OEbVnUOu01ol
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 2JOx3r2CYEgw 2026-08-21 10/500 2026-08-23 07:17 by OEbVnUOu01ol
[论文投稿] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 2JOx3r2CYEgw 2026-08-22 4/200 2026-08-23 04:04 by OEbVnUOu01ol
[论文投稿] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 2JOx3r2CYEgw 2026-08-22 5/250 2026-08-23 03:52 by OEbVnUOu01ol
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 2JOx3r2CYEgw 2026-08-22 7/350 2026-08-23 03:43 by OEbVnUOu01ol
[基金申请] 93BebMhtakh前后11位开头都是大写 +7 且听虎啸 2026-08-17 8/400 2026-08-22 21:55 by 医学老男孩
[基金申请] 范进中举一文的中心思想 +3 zjuhero 2026-08-22 4/200 2026-08-22 20:02 by mycsru
[基金申请] 什么时候开奖? +7 CrisMessi 2026-08-18 8/400 2026-08-22 18:29 by 淀粉搬运工
[基金申请] filecode,4个jtjc了 +13 ziyangfang 2026-08-19 16/800 2026-08-22 17:08 by WH3796
[基金申请] 人气不行了 +8 fansofjerry 2026-08-21 8/400 2026-08-22 16:30 by zyqchem
[基金申请] 时间戳今天,20号变了 +5 archvillain 2026-08-20 5/250 2026-08-22 06:12 by hui_daxiao
[基金申请] 放榜前的不淡定 40+4 snowwithsea 2026-08-19 14/700 2026-08-21 23:51 by cratir
[基金申请] 科研孤儿太难了 +17 我4大白菜 2026-08-20 18/900 2026-08-21 20:57 by zhangev
[论文投稿] 投稿咨询 +5 wwm09 2026-08-17 7/350 2026-08-21 10:11 by 期刊论文帮手
[基金申请] 今天放榜没戏了吧 +9 yuleib84 2026-08-19 11/550 2026-08-21 10:06 by gltch
[基金申请] 基金啊基金 +4 longfie172 2026-08-20 4/200 2026-08-21 08:58 by mark mao
[基金申请] 估计是周四 +3 archvillain 2026-08-18 3/150 2026-08-21 01:48 by jnhyjjm
[基金申请] 明天放榜? +5 Shxjjxjkx 2026-08-18 5/250 2026-08-18 18:14 by -大大大大大-
[基金申请] 今天维护系统维护 祝所有人 高中 +8 gjjjzhong 2026-08-18 9/450 2026-08-18 13:01 by 家与远方
信息提示
请填处理意见